PHP7標(biāo)量類(lèi)型declare用法實(shí)例分析
本文實(shí)例講述了PHP7標(biāo)量類(lèi)型declare用法。分享給大家供大家參考,具體如下:
php7為了提高執(zhí)行效率,在函數(shù)方法中增加了標(biāo)量類(lèi)型(布爾、浮點(diǎn)、整型、字符)的申明特性,節(jié)省了對(duì)數(shù)據(jù)類(lèi)型的檢測(cè)。
php7 仍然支持弱類(lèi)型檢測(cè),即仍然可以使用原來(lái)的方式聲明形參。
標(biāo)量聲明有兩種特性:
強(qiáng)制模式(默認(rèn)):體現(xiàn)在類(lèi)型轉(zhuǎn)換上
嚴(yán)格模式
模式聲明:declare(strict_types=1);
默認(rèn)情況值為0,值為1代表為嚴(yán)格校驗(yàn)的模式
可以使用的類(lèi)型參數(shù):
int-float-bool-string-interfaces-array-callable
作用于形參與返回值類(lèi)型說(shuō)明,可選
形參
//強(qiáng)制模式
<?php
/**
* Created by PhpStorm.
* User: bee
* Date: 2016/4/22
* Time: 10:17
*/
// php7之前申明方式
function type_weak(... $int){
return array_sum($int);
}
// 強(qiáng)制模式 php7聲明方式
//強(qiáng)制模式下會(huì)將所有實(shí)參轉(zhuǎn)換為整型
function sum(int ... $ints)
{
//array_sum() 將數(shù)組中的所有值的和以整數(shù)或浮點(diǎn)數(shù)的結(jié)果返回。
print_r($ints);
echo "<br>";
return array_sum($ints);
}
echo type_weak(2, '3',0.11);
echo "<hr>";
echo sum(2, '3',0.11);
運(yùn)行效果圖如下:

//將模式申明為嚴(yán)格模式
<?php
/**
* Created by PhpStorm.
* User: bee
* Date: 2016/4/22
* Time: 10:17
*/
//declare 必須在文件首部
declare(strict_types=1);
// 強(qiáng)制模式(默認(rèn))
function type_weak(... $int){
return array_sum($int);
}
// 強(qiáng)制模式
function sum(int ... $ints)
{
//array_sum() 將數(shù)組中的所有值的和以整數(shù)或浮點(diǎn)數(shù)的結(jié)果返回。
print_r($ints);
echo "<br>";
return array_sum($ints);
}
echo type_weak(2, '3',0.11);
echo "<hr>";
//實(shí)參存在字符串與浮點(diǎn)型,報(bào)錯(cuò)
echo sum(2, '3',0.11);
運(yùn)行效果圖如下:

返回值
<?php
/**
* Created by PhpStorm.
* User: bee
* Date: 2016/4/22
* Time: 10:17
*/
declare(strict_types=0);
// 強(qiáng)制模式(默認(rèn))
function type_weak(... $int) :int{
return array_sum($int);
}
// 強(qiáng)制模式
function sum(int ... $ints) :int
{
//array_sum() 將數(shù)組中的所有值的和以整數(shù)或浮點(diǎn)數(shù)的結(jié)果返回。
print_r($ints);
echo "<br>";
//嚴(yán)格模式下報(bào)錯(cuò)
return array_sum($ints)+0.6;
}
echo type_weak(2, '3',0.11);
echo "<hr>";
echo sum(2, '3',0.11);
運(yùn)行效果圖如下:

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《PHP基本語(yǔ)法入門(mén)教程》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)教程》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門(mén)教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
相關(guān)文章
PHP實(shí)現(xiàn)將標(biāo)點(diǎn)符號(hào)正則替換為空格的方法
這篇文章主要介紹了PHP實(shí)現(xiàn)將標(biāo)點(diǎn)符號(hào)正則替換為空格的方法,結(jié)合實(shí)例形式分析了php針對(duì)符號(hào)的正則匹配相關(guān)操作技巧,需要的朋友可以參考下2017-08-08
PHP 應(yīng)用程序的安全 -- 不能違反的四條安全規(guī)則
PHP 應(yīng)用程序的安全 -- 不能違反的四條安全規(guī)則...2006-11-11
自動(dòng)把純文本轉(zhuǎn)換成Web頁(yè)面的php代碼
用PHP來(lái)快速將純ASCII文本完美地轉(zhuǎn)換成為可讀的HTML標(biāo)記。2009-08-08
深入Apache與Nginx的優(yōu)缺點(diǎn)比較詳解
本篇文章是對(duì)Apache與Nginx的優(yōu)點(diǎn)與缺點(diǎn)進(jìn)行了詳細(xì)的分析比較,需要的朋友參考下2013-06-06
PHP Ajax實(shí)現(xiàn)頁(yè)面無(wú)刷新發(fā)表評(píng)論
PHP Ajax實(shí)現(xiàn)頁(yè)面無(wú)刷新發(fā)表評(píng)論...2007-01-01

