我想更新一段旧的PHP代码,其中对空数组使用了大量的sizeof()函数,如:
<?php
$a=array();
#...
if(sizeof($a['somthing_set_later'])>0){
#...
}
$a['somthing_set_later']="something";抛出:
参数必须是实现可数的数组或对象
为了解决这个问题,我最初可以用null填充这些数组,或者先检查is_countable(),但是如果有另一个没有抱怨的函数,那么我想要对整个项目的代码进行find_and_replace处理,这很容易。
是否有其他函数,不对此代码抛出警告?
更新:最优将是一个内置功能的速度。
发布于 2020-02-12 03:00:54
如果您想要一个检查sizeof()并忽略不可数参数的函数,您可以在项目的标题中定义以下内容:
function countableSizeof($obj) {
if(!is_countable($obj)) {
return 0; //or a sentinel value of your choosing
}
return sizeof($obj);
}https://stackoverflow.com/questions/60180366
复制相似问题