【问题标题】:Why use @ before variable in PHP? [duplicate]为什么在 PHP 中使用 @ before 变量? [复制]
【发布时间】:2011-05-08 06:37:20
【问题描述】:

可能重复:
What is the use of the @ symbol in PHP?
Reference — What does this symbol mean in PHP?

使用<?php echo @$fnameerror; ?> 是什么意思。为什么在 php 中使用 @ 之前的变量

【问题讨论】:

  • 见【php中@符号有什么用? ](stackoverflow.com/questions/1032161/…)。
  • @Matthew 我感觉 shaz 知道它一般会做什么,只是不知道为什么它会被用来作为变量的前缀。

标签: php


【解决方案1】:

error control operator .. 抑制错误消息 ..

【讨论】:

    【解决方案2】:

    @ 是纯粹的邪恶。使用它不是一个好主意。你可以找到关于它的解释here

    它可能会导致大量调试问题,因为它甚至会抑制严重错误。

    【讨论】:

    • 其实错了。如果您定义自定义错误处理程序,您仍然可以接收所有消息,尽管有 @ 抑制运算符。因此,它实际上比例如更可取。 isset() 装饰。
    • 也许是这样,但我看到越来越多的人在没有自定义错误处理程序的情况下使用它,并且在处理它时遇到了太多的麻烦。
    【解决方案3】:

    用于避免错误提示。

    【讨论】:

      【解决方案4】:

      我能想到在变量之前使用错误抑制运算符的唯一原因是,如果变量未定义,则抑制 E_NOTICE 错误。

      正如其他人所提到的,这是一个坏主意。实际处理错误比忽略错误要好得多。

      【讨论】:

        【解决方案5】:

        如果您想避免通知和警告,请在变量前使用@符号

        【讨论】:

          猜你喜欢
          • 2012-11-14
          • 1970-01-01
          • 1970-01-01
          • 2010-11-03
          • 2020-05-11
          • 1970-01-01
          • 1970-01-01
          • 2013-06-26
          相关资源
          最近更新 更多