PHP7增加了标量类型声明的特性,标量类型声明有两种模式 :
-
强制模式(默认)
-
严格模式
1.语法格式:
declare( strict_types=1 );//代码中通过制定 strict_types 的值( 1 或者 0 )
-
1 表示严格类型校验模式,作用于函数调用和返回语句;
-
0 表示弱类型校验模式。
2.使用情况
使用declare
(strict_types=1)设置是否开启严格匹配模式,开启后,如果传入的参数不是预先设置的参数类型,将会报错,例如:
<?php declare(strict_types=1); function test(int $param) { var_dump($param); } test("1");//会提示报错
使用declare
(strict_types=0)设置是否开启强制模式,开启后,如果传入的参数不是预先设置的参数类型,将不会会报错,例如:
<?php declare(strict_types=1); function test(int $param) { var_dump($param); } test("1");//不会提示报错
小提示:在强制模式下,会判断当前传进来的参数是否是设置的参数类型,如果不是,则会进行强制转换,强制转换不了的,当然也是会报错的,这里一般标量类型之间的强转都是可以通过的。
3.可供使用的类型
-
int
-
float
-
bool
-
string
-
nterfaces
-
array
-
callable
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)