WordPress中@opendir中字符@的用法是什么?

时间:2018-05-25 13:46:26

标签: php

我想知道在WordPress中使用@字符。例如:

if ( $plugins_dir = @ opendir( WP_CONTENT_DIR ) ) { ... }

@opendir@ opendir之间的区别是什么,即在@字符后使用空格。

我是WordPress的新手。

1 个答案:

答案 0 :(得分:1)

这是PHP语言语法的一部分,并不是WordPress本身的一部分。 @符号表示如果由于某种原因失败,应该抑制该函数的任何错误。

这称为Error Control Operator,您可以在PHP文档网站上找到有关它的更多信息。它可以阻止显示所有类型的错误(根据发生的情况可能是好事还是坏事)。

在拥有空间和没有空间之间似乎没有任何区别。这将取决于你编写代码的风格。

  

PHP支持一个错误控制操作符:at符号(@)。当在PHP中添加表达式之前,将忽略该表达式可能生成的任何错误消息。

<?php
/* Intentional file error */
$my_file = @file ('non_existent_file') or
    die ("Failed opening file: error was '$php_errormsg'");

// this works for any expression, not just functions:
$value = @$cache[$key];
// will not issue a notice if the index $key doesn't exist.

?>