@包含或要求之前的含义是什么

时间:2010-04-26 21:50:32

标签: php operators error-suppression

我想知道在我们使用它之前@是什么意思包含或在php中要求?!

如:

@include('block.php');

也许这是一个noob问题,但我需要知道它们?!

很抱歉

3 个答案:

答案 0 :(得分:10)

@是关闭运营商。如果出现问题,将不会显示任何错误消息。使用它通常是一种不好的做法;首先是因为错误消息是有充分理由发生的,其次是因为它的作用非常缓慢。

这大致等同于将语句包装在:

$oldErrorLevel = error_reporting(0);
// the statement
error_reporting($oldErrorLevel);

Here's the link to the PHP manual page documenting it.

答案 1 :(得分:3)

函数调用前的

@会抑制函数正常输出的任何错误。

对于include,如果block.php不存在,执行此操作的人希望脚本继续运行。更好的方法是做这样的事情:

if(is_readable('block.php')) {
  include('block.php');
}

答案 2 :(得分:0)

@是php中的错误抑制运算符,如果在该语句中找不到该文件,则不会看到任何错误。