PHP 7.4 新特性

首页 / PHP7+入门教程 / PHP 7.4 新特性

PHP 7.4是PHP的最新稳定版本。它于2019年11月28日发布,是 PHP 8 之前的最新版本。它带来了许多新函数,语法添加和修复。在这篇文章中,您将找到一个列表,其中包含所有新增和更改的内容,以帮助您准备升级。让无涯教程从PHP 7.4中的一些要点开始:

New features

PHP 7.4带有大量新函数。将从所有新函数的列表开始,然后查看更改和不推荐使用的内容。

不过,在开始之前,请注意:如果您仍在使用较低版本的PHP, 您还需要阅读PHP 7.3中的新函数

# Arrow functions rfc

箭头函数也称为"短闭包",它允许较少冗长的单行函数。

无涯教程网

虽然您之前已经写过:

array_map(function (User $user) { 
    return $user->id; 
}, $users)

您现在可以这样写:

array_map(fn (User $user) => $user->id, $users)

# 类型属性 rfc

类变量可以用类型提示:

class A
{
    public string $name;
    
    public ?Foo $foo;
}

# Improved type variance rfc

但简而言之:您将可以使用协变返回类型–

class ParentType {}
class ChildType extends ParentType {}

class A
{
    public function covariantReturnTypes(): ParentType
    { /* … */ }
}

class B extends A
{
    public function covariantReturnTypes(): ChildType
    { /* … */ }
}

# 空合并分配运算符 rfc

接下来是空合并分配运算符,它是空合并操作的简写。而不是这样做:

$data['date'] = $data['date'] ?? new DateTime();

你可以这样做:

$data['date'] ??= new DateTime();

# 数组扩展运算符 rfc

接下来,现在可以在数组中使用散布运算符:

$arrayA = [1, 2, 3];

$arrayB = [4, 5];

$result = [0, ...$arrayA, ...$arrayB, 6 ,7];

// [0, 1, 2, 3, 4, 5, 6, 7]

请注意,这仅适用于带有数字键的数组。

# 数值分隔符 rfc

PHP 7.4允许使用下划线在视觉上分隔数字值。 看起来像这样:

$unformattedNumber = 107925284.88;

$formattedNumber = 107_925_284.88;

下划线仅被引擎忽略。

# 三元运算符弃用 rfc

 该RFC为嵌套三元语句添加了弃用警告。 在PHP 8中,此弃用将转换为编译时错误。

1 ? 2 : 3 ? 4 : 5;   // deprecated
(1 ? 2 : 3) ? 4 : 5; // ok

# 串联优先 rfc

如果您要编写这样的内容:

echo "sum: " . $a + $b;

PHP以前会这样解释它:

echo ("sum: " . $a) + $b;

PHP 8将使其如此解释:

echo "sum: " . ($a + $b);

当遇到在 + -符号之前的包含的未括号表达式时,PHP 7.4添加了弃用警告。

# 无效的数组访问警告 rfc

如果要对一个整数使用数组访问语法; PHP以前会返回 null 。 从PHP 7.4开始,将发出通知。

$i = 1;

$i[0]; // Notice

strip_tags 接受数组

您过去只能剥离多个标签,如下所示:

链接:https://www.learnfk.comhttps://www.learnfk.com/php7+/new-in-php-74.html

来源:LearnFk无涯教程网

strip_tags($string, '<a><p>')

PHP 7.4还允许使用数组:

strip_tags($string, ['a', 'p'])

这一章《PHP 7.4 新特性》你学到了什么?在下面做个笔记吧!做站不易,你的分享是对我们最大的支持,感谢!😊

好记忆不如烂笔头。留下你的足迹吧 :)

相关推荐

技术管理实战36讲 -〔刘建国 - 〕

DDD实战课 -〔欧创新 - 〕

容器实战高手课 -〔李程远 - 〕

Spring Cloud 微服务项目实战 -〔姚秋辰(姚半仙) - 〕

使用 PHP GET 方法处理 HTML 表单

组合正则表达式字符类

在我的 php.ini 文件中找不到 *"extension=php_fileinfo.dll"*?

在搜索表单查询中使用 PDO 准备语句 - PHP

PHP - 获取当前进程的打开文件数量

获取有帖子的用户

视频推荐

PHP7+ - 5.字符串的声明及区别 更多视频教程 »