当前位置:首页 > PHP > php相关文章

PHP进化史— PHP 7.0

2015-10-11 来源:无名网 作者:无名网整理

PHP 7.0

匿名类的支持

在下面两种情况下,匿名类可能会被使用在命名类中:

  1. 当该类没有必要被记录下来的时候

  2. 当该类在程序执行过程中只使用一次的时候

new class($i) {
    public function __construct($i) {
            $this->i = $i;
        }
}

整除函数 — 安全的除法 (即使是被 0 整除)

该函数会返回第一个参数被第二个参数整除后结果的整数部分。当除数(也就是第二个参数)值为 0 时,该函数会抛出一个 E_WARNING 的错误并且返回 FALSE。

intdiv(int $numerator, int $divisor)

增加了新的空合并操作符

空合并操作符,也就是 “??”。

$x = NULL;
$y = NULL;
$z = 3;
var_dump($x ?? $y ?? $z); // int(3)

$x = ["c" => "meaningful_value"];
var_dump($x["a"] ?? $x["b"] ?? $x["c"]); // string(16) "meaningful_value"

添加新的操作符 — 飞船符

飞船符(太空船操作符)用于优化和简化比较操作。

// 使用 <=>(飞船符)前
function order_func($a, $b) {
    return ($a < $b) ? -1 : (($a > $b) ? 1 : 0);
}

// 使用 <=>(飞船符)之后
function order_func($a, $b) {
    return $a <=> $b;
}

标量类型声明

标量类型声明实现更强类型编程语言特性的第一步。

function add(float $a, float $b): float {
    return $a + $b;
}

add(1, 2); // float(3)

返回类型声明

增加了返回包括继承在内的标量类之外的其他类型的特性。不知何故没有将其设置为可选特性 (将在 v7.1 中说明 )

interface A {
    static function make(): A;
}
class B implements A {
    static function make(): A {
            return new B();
        }
}

组使用声明

// 显式使用语法:
use FooLibrary\Bar\Baz\ClassA;
use FooLibrary\Bar\Baz\ClassB;
use FooLibrary\Bar\Baz\ClassC;
use FooLibrary\Bar\Baz\ClassD as Fizbo;

// 分组使用语法:
use FooLibrary\Bar\Baz\{ ClassA, ClassB, ClassC, ClassD as Fizbo };

生成器委托

生成器函数体中允许使用如下新的语法:

yield from <expr>


相关内容: php
『 猜你喜欢 』
  • php飞船符-太空船操作符

    表达式。太空船操作符又被称为组合比较运算符或者结合比较符,它使用符号 表示,该操作符可以用于实现对两个变量的比较(不限制于数值类型的数据)。$c=$

  • PHP pcntl-多线程与多进程区别

    创建子进程。多进程与多线程的区别。pcntl是一个可以利用操作系统的fork系统调用在PHP中实现多线程的进程控制扩展,当使用fork系统调用后执行的代码将会是并行的。

  • php是什么_php能做什么

    PHP 能做任何事。PHP 主要是用于服务端的脚本程序,因此可以用 PHP 来完成任何其它的 CGI 程序能够完成的工作,例如收集表单数据,生成动态网页,或者发送/接收

  • PHP需要些什么?

    在本教程中,假设用户的服务器已经安装并运行了 PHP,所有以.php结尾的文件都将由 PHP 来处理。在大部分的服务器上, 这是 PHP 的默认扩展名,不过,也请询问

  • php支持的数据类型

    PHP 支持 10 种原始数据类型。 四种标量类型: bool (布尔型) int (整型) float (浮点型,也称作 double ) string (字符串)

  • Float 浮点型

    浮点型(也叫浮点数 float,双精度数 double 或实数 real)可以用以下任一语法定义: ?php $a = 1.234 ; $b = 1.2e3 ; $c

  • PHP反射机制_php反射使用场景

    反射是在PHP运行状态中,扩展分析PHP程序,导出或提取出相关类、方法、属性、参数的详细信息,包括注释。这种动态获取的信息以及动态调用对象的方法的功能称为反射API。反

  • 如何看待PHP这门备受争议的语言

    个人亲身体验。php估计是目前存在争议最大的语言了,争议(甚至往往还带有一些嘲讽)声一直不绝于耳。但是却没有影响它成为最流行的语言之一,至少在我写这篇文章时它还是一门非

  • phpstorm php7特性报错解决方法(coalesce operator is available in PHP7 only)

    解决方法。使用phpstorm开发时,偶尔会出现以下报错:coalesce operator is available in PHP7 only1、打开phpstorm

  • windows安装php-php线程安全和非线程安全

    1、windows + IS + FastCGl : 使用非线程安全版本。,2、windows +IIS +ISAPI : 使用线程安全版本,3、windows + A