IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    为什么 WordPress 至少使用 PHP 7.4

    Denis | 邓鸿华发表于 2023-11-24 13:42:06
    love 0

    先说一下 WordPress 最近这几个版本对 PHP 版本要求的改进,首先WordPress 在 6.3 版本彻底放弃对 PHP 5 的支持,然后WordPress 6.4 推荐使用 PHP 8.1 或 8.2,#WPJAM Basic# 升级到 6.4 之后,也最低要求 PHP 7.4。

    那么为什么要至少使用 PHP 7.4,因为使用 PHP 7.4 开发太爽了,怎么爽呢,我简单说一下:

    新函数

    PHP 7.3 引入 is_countable() 和 array_key_first(), array_key_last() 这三个函数,在函数处理的时候使用会带来非常大的便捷。不过这个当然不是重点,WordPress 内置了这三个函数的兼容版本,意义是,任何版本的 PHP 都可以使用。

    在数组中展开数组

    Argument unpacking(参数解包)是在 PHP 5.6 中引入的语法,它允许开发者在函数调用时使用展开运算符 ... 来传递数组的元素作为多个参数,这对于动态函数调用非常有用,尤其是当你不知道你将传递多少参数时:

    function wpjam_ob_get_contents($callback, ...$args){
    	ob_start();
    
    	call_user_func($callback, ...$args);
    
    	return ob_get_clean();
    }

    PHP 7.4 进一步增强了这个特性,允许开发者在数组中使用展开运算符,它会比使用 array_merge() 函数合并数组速度更快,因为展开运算符 (...) 它是个语法结构而不是一个函数。

    下面是 WPJAM Basic 处理字段 class 的代码,这是使用 array_merge 合并数组:

    $class	= array_merge(wp_parse_list($this->wrap_class), [$this->disabled, $this->readonly, ($this->is('hidden') ? 'hidden' : '')]);

    改成在数组中展开数组方法之后:

    $class	= [...wp_parse_list($this->wrap_class), $this->disabled, $this->readonly, ($this->is('hidden') ? 'hidden' : '')];

    箭头函数(短闭包)

    在对于 PHP 而言,匿名函数有点冗长并且难以使用和维护的,所以 PHP 7.4 推出了更短并且语法更简洁的箭头函数(短闭包),能够在很大程度上使我们的 PHP 代码更简洁。

    $schema	= []; // 前面计算获取
    
    // 使用传统的匿名函数
    $value	= array_map(function($item) use($schema){
    	return $this->sanitize_value($item, $schema);
    }, $value);
    
    // 使用 7.4 引入的箭头函数
    $value	= array_map(fn($item) => $this->sanitize_value($item, $schema), $value);

    可以看出箭头函数更加简洁,只用一行代码即可重写,不需要使用 return,并且在父作用域里定义的变量被隐式捕获(隐式作用域绑定)了,即无需使用 use 关键字。

    空合并赋值操作符

    空合并赋值运算符是一种缩写方式,它结合了 isset() 检查和三元运算符,下面的例子如果 $product 数组的 id 是否设置了,如果没有则设置为默认值 0 ,我们可以看看 PHP 版本之间代码的演变:

    // PHP 7.0 之前
    $product['id']	= isset($product['id']) ? $product['id'] : 0;
    
    // PHP 7.0
    $product['id']	= $product['id'] ?? 0;
    
    // PHP 7.4
    $product['id']	??= 0;

    很明显,PHP 7.4 代码是最简洁的。

    总结

    综上所述,这三点就可以知道为什么使用 PHP 7.4,人生苦短,编程开心最重要。

    © WordPress果酱 / RSS 订阅 / 长期承接 WordPress 项目

    生成海报 分享 打赏作者


沪ICP备19023445号-2号
友情链接