PHP函数和@functions

PHP函数和@functions,php,operators,Php,Operators,基本上,我见过人们在调用函数之前使用@,不是针对每个函数,而是针对一些扩展函数,如file\u get\u contents(),mysql\u connect()等等 是的,问题是:在函数调用之前,这些@用于什么目的 或者换句话说,@file\u get\u contents()和file\u get\u contents()之间的区别是什么?@是一个问题。基本上,它是在抑制错误。函数前面的@符号防止在调用函数时显示错误。它是PHP用来抑制函数调用产生的任何错误。@函数在其HTML输出上不显示

基本上,我见过人们在调用函数之前使用
@
,不是针对每个函数,而是针对一些扩展函数,如
file\u get\u contents()
mysql\u connect()
等等

是的,问题是:在函数调用之前,这些
@
用于什么目的


或者换句话说,
@file\u get\u contents()
file\u get\u contents()
之间的区别是什么?

@是一个问题。基本上,它是在抑制错误。

函数前面的
@
符号防止在调用函数时显示错误。

它是PHP用来抑制函数调用产生的任何错误。

@函数在其HTML输出上不显示任何错误消息,而常规的函数调用将。

我对函数前面使用的@也有类似的疑问。 为了避免这种情况,我在函数调用之前进行了一些验证。 我的例子是:


如果(是_文件($filename))
$timestamp=filemtime($filename);

@fabrik和你的理由一样。但是,虽然您的输出是不明确的(只是“输出”),但这一个清楚地说明了HTML输出,这当然是胡说八道。错误控制和程序的输出无关。@fabrik:老实说,我不明白你是在嘲笑还是在发问。不管怎样,我都不在乎@榴弹炮上校:请你输入你对错误控制的定义,以便我们对这个问题有更多的了解。我同意我的回答缺乏深度,因为我只是说了我理解的:)谢谢。他不是在和你说话。但对那些投了否决票的人来说。现在明白了吗?错误控制由两部分组成:标准错误输出目标和错误级别。
@
操作员和
错误报告设置都是错误的控制级别。(@将其设置为0),而
记录错误
显示错误
负责目标的设置。后者负责您所说的:HTML输出。虽然@与此无关,但决不能将id用于此目的。请参阅的可能副本