昨天发现有个代码在 php7.2 下没法跑,一查发现 count 在 7.2 的行为不再兼容,而且我看了这个改变非常震惊:
http://php.net/manual/en/function.count.php
也就是说 count 的数据必须是 countable 的,这太理想化了,假如一个对象为 countable 或者为 null 呢?以前 null 可以传入现在不行了;以前 count(string)可以,现在不行了;
去网上搜这个 features 全是问题,我觉得你要改 count 必须以兼容的方式来改吧,比如 count 的第二个参数加一个严格模式啥的,否则失去了脚本语言的本质。。。。
http://php.net/manual/en/function.count.php
也就是说 count 的数据必须是 countable 的,这太理想化了,假如一个对象为 countable 或者为 null 呢?以前 null 可以传入现在不行了;以前 count(string)可以,现在不行了;
去网上搜这个 features 全是问题,我觉得你要改 count 必须以兼容的方式来改吧,比如 count 的第二个参数加一个严格模式啥的,否则失去了脚本语言的本质。。。。