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

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

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

更多關於PHP相關內容感興趣的讀者可查看本站專題:《PHP基本語法入門教程》、《PHP運算與運算符用法總結》、《php面向對象程序設計入門教程》、《PHP網絡編程技巧總結》、《PHP數組(Array)操作技巧大全》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。