PHP 手册说 error_reporting 常量因 PHP 版本有差异不可靠,可获取函数还是获取的数值,怎么获取常量名称以兼容 PHP 不同版本?

2017-05-28 23:31:26 +08:00
 xiaoyanbot

PHP 手册:

新的 error_reporting 级别。 可以是一个位掩码也可以是一个已命名的常量。 强烈建议使用已命名的常量,以确保兼容将来的版本。 由于错误级别的添加、整数取值范围的增加, 较久的基于整数的错误级别不会总是和预期的表现一致。

可获取的函数,获得的结果还是数值

var_dump( ini_get(error_reporting) );

echo  error_reporting() .'<hr>';

怎么获取常量名称以兼容 PHP 不同版本?

1944 次点击
所在节点    PHP
4 条回复
sagaxu
2017-05-28 23:52:57 +08:00
shyling
2017-05-29 00:14:51 +08:00
就是 error_reporting(E_ALL & ~E_ERROR); 之类的吧,大概是中间魔改了 constriants 对应的数字,反正我全是用 0 23333
cxbig
2017-05-29 02:41:38 +08:00
大体意思就是说,凡是函数参数有预留常量的,在代码里用常量。
哪怕你知道常量对应的值,也不要偷懒,以防版本更新后,相应数值的改变对你的程序造成影响。
函数的常量通常在手册里对应的页面可以找到。
xiaoyanbot
2017-06-01 21:41:59 +08:00
@sagaxu 是动态获取这个常量

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/364510

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX