@是PHP提供的错误信息屏蔽的专用符号。比如在一个函数前使用@@mysql_query 不会出现Warning,而原来mysql_query 在遇到错误时会在页面上访提示Warning。
@是可以屏蔽函数执行过程中遇到问题而产生的一些错误、警告信息,这样用户就看不到程序的出错信息。这样除了用户界面会友好一些外,更重要的是安全性,因为屏蔽了出错文件的路径等信息。
for($i=0;$i<$to;$i++){ ???$result=fsockopen($target,$i,$errno,$errstr,); ???if(!$result){ ???????echo "Port $i Closed...".‘<br>‘; ???}else{ ???????echo "Socket open at port:$i".‘<br>‘; ???}}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
fsockopen在执行的过程中会产生连接超时的警告,如果不在这个函数前加@,那么输出信息是这样的:
?如图所示,错误信息会列出完整的路径和出错行,这是相当危险的!在看看在fsockopen()函数前加上@…那么警告信息就被屏蔽了:
?
PHP函数前面添加@的作用
原文地址:https://www.cnblogs.com/keta/p/8137118.html