我想,标题本身就解释了这个问题....:)
使用@
来抑制PHP 警告和通知是否正确?
例如,在:-
if (isset($someArray['somekey'])) {
$myVar = $someArray['somekey'];
}
并在:-
$myVar = @$someArray['somekey'];
哪一个是正确的方法?为什么另一个是错误的?
最佳答案
Is it right to use @ to suppress PHP warnings and notices ?
没有
which one is right way?
第一种方法。
And why the other one is wrong?
这两种方法都使 $myVar
被分配了一个 NULL
,但是你不应该试图抑制错误/警告。
评论说明:
嗯,您不想知道是什么原因导致您的脚本在您期待其他内容时显示一些奇怪的输出?
如果你正在运行这段代码..
echo $source=file_get_contents("http://www.google.com");
考虑如果 google.com
出现故障,那么您会在脚本中收到一条通知,例如..'找不到主机名',通过阅读此信息性消息,您可以很清楚地知道您的代码是正确的,但问题仅出在 Google 服务器上。
假设您有 echo $source=@file_get_contents("http://www.google.com");
,不会打印任何内容,但是您会期待 HTML 源代码。
你拿到照片了吗?
关于php - 使用 "@"来抑制警告/通知对吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20854013/