<?php
curl function abc
{
get information of url and return information string
}
$html=abc();
$doc=DOMDocument();
@$doc->LoadHTML($html);
?>
这里如果我们采用正常变量,它会给出错误原因 什么是差异
答案 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