在foreach循环之前检查变量,速记?

Cho*_*rds -1 php

我经常设置如下代码:

if ($arr) {
    foreach ($arr as $a) {
        // Code stuffs
    }
}
Run Code Online (Sandbox Code Playgroud)

如果$arr不存在,那丝毫没关系,所以我很想使用每个人最喜欢的抑制器(@)而不是用if语句来破坏我的代码.

  • 如果检查和预告在同一条线上,是否有某种简写?
  • 在这种情况下抑制错误的任何大问题?

STT*_*LCU 6

我建议采用另一种方法,这种方法是在学年期间通过我的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
}
Run Code Online (Sandbox Code Playgroud)

正确,简单,易读和易懂一目了然.如果你不初始化$改编之前,你可能想知道它的诞生... expecially 6个月后您关闭这个项目后,需要一些调试!

  • 我宁愿说"初始化变量,无论你是否有疑问" (3认同)