资讯详情

10个你应该学习使用的PHP特性

2017-04-19 阅读:66 来源:哈尔滨今日灵图
进入>

1)标量类型声明(PHP7)

PHP是一种松散类型的编程语言,因此没有提供任何指定输入参数类型和返回值类型的方法。

PHP7通过以下语法改变了这个现象:

functionadd(int$x,int$y):int

{

return$x+$y;

}

echoadd(1,2);

有效类型为:类/接口名称,self,array(数组),callable(回调类型),bool(布尔型),float(浮点型),int(整型)和string(字符串)。

2)??—空接合操作符(PHP7)

空接合操作符虽然小,但非常好用,是PHP7中新增加的。

??—只要操作符的左边存在且不为空,就返回左边,否则就返回操作符的右边:

$b=NULL;

$c="abc123";

echo($a??$b??$c);

3)匿名类(PHP7)

PHP7中还有一个新增的也很不错,那就是匿名类。

有时候,我们只是没有必要创建一个命名的类,因为它的名字会导致当前命名空间的膨胀。

语法非常简单:

echo(newclass(){

publicfunctionmyMethod(){

return"Hello!";

}

})->myMethod();

4)Reflection

Reflection是一个用来获取有关运行时代码信息的强大框架。

让你可以对类、接口、函数、方法和扩展执行反向工程,以构建映射引擎,IoC容器或文档框架等等。

下面是一个获取匿名类所有方法的简单例子:

$class=newReflectionClass(newclass(){

publicfunctiongetText(){

return"Hellofromanonymousclass";

}

});

$methods=$class->getMethods();

var_dump($methods);

5)短数组初始化

在用PHP编程的时候,我倾向于大量使用数组,因为它们不仅功能强大,而且简单易用。

PHP的5.4.x版本使得更容易初始化:

$myArray=["foo","name"=>"bar"];

6)DateTime类

PHP的5.2版本附带DateTime类作为首选的操纵和格式化日期和时间的方式。

更多信息请看这里:php/manual/en/class.datetime.php

7)Lambda表达式/匿名函数

匿名函数(有时也被称为lambda表达式)是没有指定名称的函数。

匿名函数可以被分配给一个变量,如下例所示:

$sayHi=function($toName){

echo("Hi".$toName);

};

$sayHi("Peter");

更多信息请看这里:php/manual/en/functions.anonymous.php

8)array_map

array_map是一个不错的函数,能帮助你对数组中的每个元素执行计算。这在混合了匿名函数/lambda表达式的时候特别好用。

无论你为数组中的元素提供什么方法,array_map函数都适用:

$nameLengths=array_map(function($item){

returnstrlen($item);},["Sue","Peter","Michael"]);

需要注意的是,array_map可能会比foreach慢一点儿(特别当混合使用lambda表达式的时候更为明显),所以要慎用于那些非常大的数组。

更多信息请看这里:php/manual/en/function.array-map.php

9)json_encode()和json_decode()

我最近倾向于大量使用JSON序列化和反序列化。PHP的json_encode和json_decode函数对此提供了大力支持。

需要注意的是,json_encode会忽略私有成员:

classcar{

public$make="Tesla";

public$model="ModelS";

private$errorCodes=['34343','545344'];

}

$carAsJson=json_encode(newcar());

10)密码的哈希(hashing)和验证

PHP通过password_hash和password_verify函数,用一种安全的方式来大力支持密码的哈希和验证。因为使用非常简单,所以我们就没有必要重新发明轮子了。

作为PHP程序员,以上这10个PHP特性你一定要熟悉,感谢您的阅读。

加载全文

免责声明:本站部分内容、图片来自用户自主上传,如果您对本站信息资源版权的归属问题存有异议,请您致信,我们会立即做出答复并及时解决。如果您认为本站有侵犯您权益的行为,请通知我们,我们一定根据实际情况及时处理。

以上是哈尔滨今日灵图为大家整理的有关10个你应该学习使用的PHP特性的全部内容,更多精彩请访问学习资讯新闻专栏。
下一篇: c++培训机构

相关课程

更多>
2020猎学网广告栏
申请课程免费试听名额

课程顾问24小时内联系您

你好

顾问将于24小时内联系您!

确定
在线咨询 微信咨询 立即报名
申请1对1课程顾问咨询服务
×
你好

顾问将于24小时内联系您!

确定
哈尔滨猎学网 >哈尔滨今日灵图 >10个你应该学习使用的PHP特性