前言
PHP7 將類型申明變成了可能,PHP 7 支持的形參類型申明的類型有以下幾種
函數形參與返回類型聲明demo 如下
/** * @author 袁超 <yccphp@163.com> */class Demo{ /** * int $name 則是形參類型聲明 * : int 是返回類型聲明 */ public function age(int $age) : int { return $age; }} 上面我們定義了一個 Demo 類,里面就一個方法,在聲明方法時,我們指定了 int $name 要求 函數接收的參數必須是 int 類型的,在參數列表括號后面,我們跟上了 : int ,則是聲明了我們這個函數的返回數據類型
$demo = new Demo();$demo->age(10.23); // 我們傳遞的是 float 型參數,也能通過檢查
在上面例子中,我們傳遞的是一個 float 類型的參數,但是代碼還是能夠正常運行起來的
這是因為在 php7 中,默認情況下形參類型說明不是完全被限制的,這就意味著我們定義的東西只是一個建議,而不是完全約束
當然,我們可以完全限制,我們通過設置來實現
declare(strict_type=1);
這個時候,我們運行上面的代碼,則會得到一個 Uncaught Type Error
這個改變挺有意義的,這樣我們在做一些多人參與的項目的時候,就不會出現參數亂傳以及不知道這個函數返回什么東西的問題
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對VeVb武林網的支持。
新聞熱點
疑難解答
圖片精選