处理未定义的索引崩溃?

dav*_*vid -2 php laravel laravel-5

最近我开始使用laravel.但我想知道为什么它因为未定义的索引而崩溃并抛出异常.

例如:

$ ARR = []; 返回$ arr 1 ;

这导致应用程序崩溃并返回代码500.这一点都不好.我不需要它崩溃,它应该只返回null.

我怎么能处理这个?

其他建议用isset包装每一行,例如:

if(isset($arr[1]))
   return $arr[1]
Run Code Online (Sandbox Code Playgroud)

我无法浏览所有代码并使用isset包装每一行.这是艰苦的工作.

谢谢

Ale*_*nin 5

如果您害怕冗余,可以使用快捷方式:

echo $arr[1] ?? ''; // works in `PHP 7` only
Run Code Online (Sandbox Code Playgroud)

对于刀片:

{{ $arr[1] or '' }}
Run Code Online (Sandbox Code Playgroud)

这两个示例的工作原理如下:

if (isset($arr[1])) {
    echo $arr[1];
} else {
    echo '';
}
Run Code Online (Sandbox Code Playgroud)

如果您还在使用PHP 5,可以使用三元运算符:

echo isset($arr[1]) ? $arr[1] : '';
Run Code Online (Sandbox Code Playgroud)