我正在学习面向对象的php。 我遇到过一些我不太了解的代码。 此代码属于一个类。
1)使用@的代码。 例如:
$this->image = @imagecreatefromgif($filename);
有人可以解释@。
的用法2) 此外,它看起来像脚本以我不习惯的方式声明变量($ var方式)。
例如:
$this->ext = $size['mime'];
$ ext在使用此代码之前未声明,但在它之后使用。这会在对象中创建$ ext变量吗?
谢谢你们!
答案 0 :(得分:1)
@
将抑制错误,以便不会显示该表达式的错误。
http://php.net/manual/en/language.operators.errorcontrol.php
答案 1 :(得分:1)
@是php的错误抑制操作符,你永远不应该使用它
你应该处理错误而不是忽略,并且你会得到长时间的通知,这对于调试也是有帮助的
最糟糕的情况将如manual
中所述目前,“@”错误控制操作符前缀甚至会禁用错误报告,以解决将终止脚本执行的严重错误。除此之外,这意味着如果你使用“@”来抑制来自某个函数的错误,并且它不可用或者输入错误,那么脚本就会在那里死亡而没有任何关于原因的指示。
答案 2 :(得分:0)
@
表示“在调用此函数时禁止警告”。