php 7新特性之類型申明詳解
前言
PHP7 將類型申明變成了可能,PHP 7 支持的形參類型申明的類型有以下幾種
- 整型
- 浮點(diǎn)型
- 字符串型
- 布爾類型
函數(shù)形參與返回類型聲明demo 如下
/**
* @author 袁超 <yccphp@163.com>
*/
class Demo{
/**
* int $name 則是形參類型聲明
* : int 是返回類型聲明
*/
public function age(int $age) : int
{
return $age;
}
}
上面我們定義了一個(gè) Demo 類,里面就一個(gè)方法,在聲明方法時(shí),我們指定了 int $name 要求 函數(shù)接收的參數(shù)必須是 int 類型的,在參數(shù)列表括號后面,我們跟上了 : int ,則是聲明了我們這個(gè)函數(shù)的返回?cái)?shù)據(jù)類型
$demo = new Demo(); $demo->age(10.23); // 我們傳遞的是 float 型參數(shù),也能通過檢查
在上面例子中,我們傳遞的是一個(gè) float 類型的參數(shù),但是代碼還是能夠正常運(yùn)行起來的
這是因?yàn)樵?php7 中,默認(rèn)情況下形參類型說明不是完全被限制的,這就意味著我們定義的東西只是一個(gè)建議,而不是完全約束
當(dāng)然,我們可以完全限制,我們通過設(shè)置來實(shí)現(xiàn)
declare(strict_type=1);
這個(gè)時(shí)候,我們運(yùn)行上面的代碼,則會得到一個(gè) Uncaught Type Error
這個(gè)改變挺有意義的,這樣我們在做一些多人參與的項(xiàng)目的時(shí)候,就不會出現(xiàn)參數(shù)亂傳以及不知道這個(gè)函數(shù)返回什么東西的問題
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關(guān)文章
php中3種方法統(tǒng)計(jì)字符串中每種字符的個(gè)數(shù)并排序
3種方法,統(tǒng)計(jì)字符串中每種字符的個(gè)數(shù)并排序,多種解法喲~ str_split()函數(shù)很重要2012-08-08
php+mysql實(shí)現(xiàn)用戶注冊登陸的方法
這篇文章主要介紹了php+mysql實(shí)現(xiàn)用戶注冊登陸的方法,可實(shí)現(xiàn)簡單的用戶注冊登錄的功能,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-01-01
Discuz板塊橫排顯示圖片的實(shí)現(xiàn)方法
Discuz板塊橫排顯示圖片的實(shí)現(xiàn)方法...2007-05-05

