php 7新特性之類型申明詳解
前言
PHP7 將類型申明變成了可能,PHP 7 支持的形參類型申明的類型有以下幾種
- 整型
- 浮點型
- 字符串型
- 布爾類型
函數(shù)形參與返回類型聲明demo 如下
/** * @author 袁超 <yccphp@163.com> */ class Demo{ /** * int $name 則是形參類型聲明 * : int 是返回類型聲明 */ public function age(int $age) : int { return $age; } }
上面我們定義了一個 Demo 類,里面就一個方法,在聲明方法時,我們指定了 int $name
要求 函數(shù)接收的參數(shù)必須是 int 類型的,在參數(shù)列表括號后面,我們跟上了 : int ,則是聲明了我們這個函數(shù)的返回數(shù)據(jù)類型
$demo = new Demo(); $demo->age(10.23); // 我們傳遞的是 float 型參數(shù),也能通過檢查
在上面例子中,我們傳遞的是一個 float
類型的參數(shù),但是代碼還是能夠正常運行起來的
這是因為在 php7 中,默認(rèn)情況下形參類型說明不是完全被限制的,這就意味著我們定義的東西只是一個建議,而不是完全約束
當(dāng)然,我們可以完全限制,我們通過設(shè)置來實現(xiàn)
declare(strict_type=1);
這個時候,我們運行上面的代碼,則會得到一個 Uncaught Type Error
這個改變挺有意義的,這樣我們在做一些多人參與的項目的時候,就不會出現(xiàn)參數(shù)亂傳以及不知道這個函數(shù)返回什么東西的問題
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關(guān)文章
PHP 抽象方法與抽象類abstract關(guān)鍵字介紹及應(yīng)用
抽象方法指沒有方法體的方法,只要一個類里面有一個方法是抽象方法,那么這個類就要定義為抽象類,不了解的朋友可以看看2014-10-10php中鉤子(hook)的原理與簡單應(yīng)用demo示例
這篇文章主要介紹了php中鉤子(hook)的原理與簡單應(yīng)用,結(jié)合完整demo實例形式分析了php中鉤子(hook)的原理及簡單使用操作技巧,需要的朋友可以參考下2019-09-09PHP 正則表達(dá)式之正則處理函數(shù)小結(jié)(preg_match,preg_match_all,preg_replace,pr
本節(jié)我們就來介紹一下PHP中基于perl的正則表達(dá)式處理函數(shù),主要包含了分割, 匹配,查找,替換等等處理操作,依舊是配合示例講解,讓我們開始吧2012-10-10