我经常设置如下代码:
if ($arr) {
foreach ($arr as $a) {
// Code stuffs
}
}如果$arr不存在,那么一点也不重要,所以我倾向于使用每个人最喜欢的抑制器(@),而不是用If语句来搅乱我的代码。
发布于 2013-09-03 14:30:01
我建议采用另一种方法,这是我在学年期间的C++和Java格式衍生出来的。
如果您有疑问,请初始化变量,如果这样做很便宜的话。
例如,在您的例子中,我想指出以下几点
//early on, *before any other possible use of $arr*!
$arr = array();
//do something else, remake $arr or not, whatever!
foreach ($arr as $a) {
// Code stuffs
}正确,简单,可读性强,一目了然。如果你以前不初始化$arr,你可能会想知道它是在哪里诞生的.特别是在你结束这个项目6个月后,需要一些调试!
发布于 2013-09-03 14:34:15
你总是可以做一个“速记”的功能
function checkArr($arr){
return isset($arr) ? ((count($arr) > 0) ? $arr : array()) : array();
}
foreach(checkArr($arr) as $a){
echo $a;
}我的2美分。
发布于 2013-09-03 14:27:22
使用:
if ((!isset($arr)) || (!is_array($arr)) $arr = array();
foreach ($arr as $a)
{
// Code stuffs
}我知道,if还在,但是你没有整个循环
https://stackoverflow.com/questions/18594756
复制相似问题