PHP php中的@作用

对于这个@符号,之前很少在意,只知道它是错误屏蔽的符号。今天再一次接触到了它,不得不认真了解一下,这面这段资料我是在网上找到的,也是我认为讲得比较清楚的资料。


@是可以屏蔽函数执行过程中遇到问题而产生的一些错误、警告信息,这样用户就看不到程序的出错信息。这样除了用户界面会友好一些外,更重要的是安全性,因为屏蔽了出错文件的路径等信息。

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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

fsockopen在执行的过程中会产生连接超时的警告,如果不在这个函数前加@,那么输出信息是这样的: 
这里写图片描述

如图所示,错误信息会列出完整的路径和出错行,这是相当危险的!在看看在fsockopen()函数前加上@…那么警告信息就被屏蔽了: 
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值