@ $有什么区别?
这个问题在这里已经有了答案:
@
是PHP的错误控制操作符。 基本上,将它放在表达式(如数组访问或函数调用)之前将会抑制通常会生成的任何错误。 功能上,没有区别,只是根据您的设置生成并记录或显示警告/通知。
在这种情况下,如果'blah'没有在$ _POST数组中定义,第一个表单(带@)将不会生成通知,而第二个表单将会生成通知。
至于什么是首选,根据我的经验@
通常是不鼓励的,就像任何只是抑制错误的东西一样 - 更好的做法是首先主动检查事物。 除了其他原因之外,PHP文档给出了这个理由要谨慎:
警告:目前,“@”错误控制运算符前缀甚至会禁用将终止脚本执行的严重错误的错误报告。 除此之外,这意味着如果您使用“@”来抑制某个函数的错误,并且它不可用或错误输入,那么脚本就会在那里死去,而不会显示原因。
TL; DR:它可以抑制错误,除非你有充分的理由这样做,否则这种错误通常是不鼓励的。 更好地积极主动。
@
符号会压倒POST引发的任何错误。 例如,当它未定义时,你将不会收到警告。
在放置@时,在Php中是为了防止显示我们在那部分代码中存在的系统错误。
链接地址: http://www.djcxy.com/p/57709.html