0

你能告诉我php中$variable和@$variable的区别吗

<?php
 curl function abc
{
 get information of url and return information string
}
$html=abc();
$doc=DOMDocument();
@$doc->LoadHTML($html); 
?>

在这里,如果我们采用正常变量,它会给出错误,为什么它是这样,有什么区别

4

4 回答 4

4

@函数调用之前的A表示“禁止警告”。

因此,@$doc->LoadHTML($html);禁止来自方法调用 ( LoadHTML()) 的警告。

一般来说,这是一个坏主意,因为警告意味着你做错了什么,你最好修复它而不是装聋作哑。

于 2013-09-29T18:21:46.027 回答
1

运算符告诉编译器忽略 PHP 可能给出的@错误,建议不要使用它。

于 2013-09-29T18:21:43.913 回答
1

访问该属性时禁止警告,例如,如果 $html 未定义,则不显示错误,请参阅http://davidwalsh.name/suppress-php-errors-warnings

于 2013-09-29T18:21:44.150 回答
0

@ 被调用Error Control Operator,它可以在表达式之前添加以禁用该表达式的错误报告。

有关更多信息,请参阅此帖子:在 PHP 中使用 @ 运算符抑制错误

于 2013-09-29T18:56:10.183 回答