PHP开发者应该学习、会用10个PHP7新特性 沂蒙山小调五线谱_世绘_一尘网_www.l-pal.com
一尘网 - 世绘 - 正文

PHP开发者应该学习、会用10个PHP7新特性

2019-05-22 13:41IT时代网

本文主要总结了10个PHP7特性,这些PHP特性对于PHP开发者来说都是应该学习和使用的,一起来学习下:

1)标量类型声明(PHP7)

PHP是一种松散类型的编程语言,因此没有提供任何指定输入参数类型和返回值类型的方法。 PHP7通过以下语法改变了这个现象:

function add(int $x, int $y) : int
{
    return $x + $y;
}
echo add(1, 2);

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

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

空接合操作符虽然小,但非常好用,是PHP7中新增加的。 — 只要操作符的左边存在且不为空,就返回左边,否则就返回操作符的右边:

//$a is not defined
$b = NULL;
$c = "abc123";
echo($a    $b    $c);
//Result: abc123

3)匿名类(PHP7)

PHP7中还有一个新增的也很不错,那就是匿名类。有时候,我们只是没有必要创建一个命名的类,因为它的名字会导致当前命名空间的膨胀。语法非常简单:

echo (new class() {
    public function myMethod() {
      return "Hello!";
    }
})->myMethod();
//Result: Hello!

4)Reflection

Reflection是一个用来获取有关运行时代码信息的强大框架。让你可以对类、接口、函数、方法和扩展执行反向工程,以构建映射引擎,IoC容器或文档框架等等。

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

$class = new ReflectionClass(new class() {
    public function getText() {
        return "Hello from anonymous class";
    }
});
$methods = $class->getMethods();
var_dump($methods);

更多信息请看这里:http://php.net/manual/en/book.reflection.php

5)短数组初始化

在用PHP编程的时候,我倾向于大量使用数组,因为它们不仅功能强大,而且简单易用。PHP的5.4.x版本使得更容易初始化:

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

6)DateTime类

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

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

7)Lambda表达式/匿名函数

匿名函数(有时也被称为lambda表达式)是没有指定名称的函数。匿名函数可以被分配给一个变量,如下例所示:

$sayHi = function($toName) {
    echo("Hi " . $toName);
};
$sayHi("Peter");

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

8)array_map

array_map是一个不错的函数,能帮助你对数组中的每个元素执行计算。这在混合了匿名函数/ lambda表达式的时候特别好用。无论你为数组中的元素提供什么方法,array_map函数都适用:

$nameLengths = array_map(function($item) {
    return strlen($item); }, ["Sue", "Peter", "Michael"]);
//Result: 3, 5, 7

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

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

编辑:陈红

版权与免责声明:

凡未注明"稿件来源"的内容均为转载稿,本网转载出于传递更多信息的目的;如转载稿涉及版权问题,请作者联系我们,同时对于用户评论等信息,本网并不意味着赞同其观点或证实其内容的真实性;


本文地址:http://www.l-pal.com/news/2019/05/22/647890.html

转载本站原创文章请注明来源:一尘网

点击排行
焦点

看上去很火的短视频,对创业者却是个无底洞

  美国杂志《名利场》曾经针对“青少年喜爱的明星”做过一次调 ...详情

Win10系统的便签(便利贴)在哪?

Win10系统更新成2016年周年 版,版本编号1607,。 ...详情

19999元!“小米”自行车来了 史上最贵

啄木网-青岛IT(www.zomiu.com):19999元 ...详情

2月流失20万玩家 绝地求生真的要凉了吗?

《绝地求生》自发布以来可以说是一路飙升,玩家数量每月都有很明 ...详情

万字干货总结:最全的运营数据指标解读

用户获取是运营的起始,用户获取接近线性思维,或者说是一个固定 ...详情

CopyRight © 2019 www.l-pal.com, All Rights Reserved 一尘网 版权所有

使用一尘网前必读 | 关于我们 | 免责声明 | 隐私政策 | 版权声明 | 联系我们