gpt4 book ai didi

PHP7 向所有标准 php 函数添加斜杠 php-cs-fixer 规则

转载 作者:可可西里 更新时间:2023-11-01 13:07:45 25 4
gpt4 key购买 nike

继承了一个PHP7项目。以前的开发人员为所有标准 PHP 函数添加了一个斜杠,即使是\true。这样做有什么理由吗?

一些例子:

\array_push($tags, 'master');

if ($result === \true) {}

$year = \date('Y');

切换此选项的 php-cs-fixer 规则是什么?

最佳答案

您可以使用斜杠来确保您使用的是 native PHP 函数或常量,而不是在项目的命名空间中定义的具有相同名称的函数/常量。

namespace test;

function array_push($arr, $str) {
return $str;
}

$arr = [];

var_dump(array_push($arr, 'Hello World')); // array_push defined in namespace test
var_dump(\array_push($arr, 'Hello World')); // native array_push function

演示: https://ideone.com/3xoFhm

可以使用 \ 斜杠的另一种情况是加快解析速度(如 PHP-CS-Fixer 文档所述)。 PHP 不需要使用自动加载器来查找函数或常量声明。因此,使用前导 \ PHP 可以使用 native 函数而无需额外检查。


您可以使用 native_function_invocation(对于函数)和 native_constant_invocation(对于常量)选项在 PHP-CS-Fixer 上切换此选项。您可以在以下页面找到选项的解释:https://github.com/FriendsOfPHP/PHP-CS-Fixer

关于PHP7 向所有标准 php 函数添加斜杠 php-cs-fixer 规则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55419673/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com