php中$ variable和@ $变量之间的区别

时间:2013-09-29 18:20:27

标签: php curl domdocument

你能告诉我两者之间的区别吗? php中的$ variable和@ $ variable

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

这里如果我们采用正常变量,它会给出错误原因 什么是差异

4 个答案:

答案 0 :(得分:3)

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

因此,@$doc->LoadHTML($html);会抑制方法调用(LoadHTML())中的警告。

一般来说,这是一个糟糕的主意,因为警告意味着你做错了什么,而且你最好解决这个问题而不是聋哑人。

答案 1 :(得分:1)

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

答案 2 :(得分:1)

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

答案 3 :(得分:0)

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

有关详情,请参阅此帖子:Suppress error with @ operator in PHP