【问题标题】:difference between $variable and @$variable in php [duplicate]php中$variable和@$variable之间的区别[重复]
【发布时间】:2013-09-29 18:20:26
【问题描述】:

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

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

如果我们采用普通变量,它会给出错误,为什么会这样 有什么区别

【问题讨论】:

标签: php curl domdocument


【解决方案1】:

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

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

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

【讨论】:

    【解决方案2】:

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

    【讨论】:

    • 但是当我不使用它时出现错误
    【解决方案3】:

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

    【讨论】:

      【解决方案4】:

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

      更多信息请看这篇文章:Suppress error with @ operator in PHP

      【讨论】:

        猜你喜欢
        • 2012-10-27
        • 2019-11-16
        • 2013-07-22
        • 2013-03-28
        • 2014-06-25
        • 2012-12-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多