目录
回复讨论(解决方案)
首页 后端开发 php教程 求怎样解决fsockopen函数,错误

求怎样解决fsockopen函数,错误

Jun 23, 2016 pm 02:13 PM

<?//获取文件大小function remote_filesize($url_file){    if (!remote_file_exists($url_file)) return false;    $headInf = get_headers($url_file,1);    return $headInf['Content-Length'];}//判断文件是否存在function remote_file_exists($url_file){     $url_file = trim($url_file);    if (empty($url_file)) return false;    $url_arr = parse_url($url_file);    if (!is_array($url_arr) || empty($url_arr)) return false;    $host = $url_arr['host'];    $path = $url_arr['path'] ."?".@$url_arr['query'];    $port = isset($url_arr['port']) ?$url_arr['port'] : "80";    $fp = fsockopen($host, $port, $err_no, $err_str,30);    if (!$fp) return false;    $request_str = "GET ".$path." HTTP/1.1\r\n";    $request_str .= "Host:".$host."\r\n";    $request_str .= "Connection:Close\r\n\r\n";    fwrite($fp,$request_str);    //fread replace fgets    $first_header = fread($fp, 128);    fclose($fp);    if (trim($first_header) == "") return false;    //check $url_file "Content-Location"    if (!preg_match("/200/", $first_header) || preg_match("/Location:/", $first_header)) return false;    return true;}echo remote_filesize("http://wlm212.bjphp1.qq1.cc/down/ee.exe");?>
登录后复制


这个是我在网上找的,取远程文件大小的例子。
如果域名正常,文件存在就返回文件大小,
如果域名正常,文件不存在,就返回false。

现在问题出现了,如果域名不正常,就像上面这个地址,域名解析不了,也就是无法访问。这个时候会输出错误信息。

php_network_getaddresses: getaddrinfo failed: 不知道这样的主机。 in D:\PHPnow-1.5.6\htdocs\webadmin\inc\filesize.php on line 15

怎样能把这个错误信息去掉呢,在不修改web服务器配置的情况下,只在代码里面解决。
因为我要用ajax,取文件大小信息。所以不能报错,一报错,javascript获取的返回值,就是错误信息了,这个就导致前台无法运行了。

有会的吗,指点一下小弟。


回复讨论(解决方案)

    try
 {
$fp = fsockopen($host, $port, $err_no, $err_str,30);
  }catch(Exception $e)
  {
  }

加了个异常处理,还是不管用。

$fp =  @fsockopen($host, $port, $err_no, $err_str,30);
屏蔽掉错误信息(这个函数在异常处理之前出生)

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
4 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

无法完成操作(错误0x0000771)打印机错误 无法完成操作(错误0x0000771)打印机错误 Mar 16, 2024 pm 03:50 PM

如果您在使用打印机时遇到错误消息,例如操作无法完成(错误0x00000771),可能是因为打印机已断开连接。在这种情况下,您可以通过以下方法解决问题。在本文中,我们将讨论如何在Windows11/10PC上修复此问题。整个错误信息说:操作无法完成(错误0x0000771)。指定的打印机已被删除。修复WindowsPC上的0x00000771打印机错误若要修复打印机错误操作无法完成(错误0x0000771),指定的打印机已在Windows11/10PC上删除,请遵循以下解决方案:重新启动打印假脱机

Windows沙盒启动失败-访问被拒绝 Windows沙盒启动失败-访问被拒绝 Feb 19, 2024 pm 01:00 PM

Windows沙盒是否终止,并显示Windows沙盒无法启动,错误0x80070005,拒绝访问消息?一些用户报告说,Windows沙盒无法打开。如果您也遇到此错误,您可以按照本指南进行修复。Windows沙盒启动失败-访问被拒绝如果Windows沙盒终止,并显示Windows沙盒无法启动,错误0x80070005,拒绝访问消息,请确保您以管理员身份登录。此类错误通常是由于权限不足引起的。因此,请尝试以管理员身份登录并查看是否解决问题。如果问题仍然存在,可以尝试以下解决方案:以管理员身份运行Wi

揭秘HTTP状态码460的出现原因 揭秘HTTP状态码460的出现原因 Feb 19, 2024 pm 08:30 PM

解密HTTP状态码460:为什么会出现这个错误?引言:在日常的网络使用中,经常会遇到各种各样的错误提示,其中包括HTTP状态码。这些状态码是HTTP协议定义的一种机制,用于指示请求的处理情况。在这些状态码中,有一种比较罕见的错误码,即460。本文将深入探讨这个错误码,并解释为什么会出现这个错误。HTTP状态码460的定义:首先,我们需要了解HTTP状态码的基

解决电脑宽带连接错误代码651的方法 解决电脑宽带连接错误代码651的方法 Dec 24, 2023 am 11:19 AM

很多小伙伴打开电脑连接宽带的时候,电脑提示错误651,这是什么情况呢?出现651是由于用户终端电脑与网通局端设备连接不通所导致的,有可能是外部断线或者设备出了问题,我们可以联系运营商解决,或者检查一下设备,具体的教程一起来看看吧。解决电脑宽带连接651错误的详细教程方法1:网卡驱动故障1、首先考虑网卡驱动问题,这个问题比较常见,右键点击桌面计算机——管理,如下图所示2、在计算机属性页面选择“设备管理器”进入。3、在设备管理器页面找到“网络适配器”下面一般有两个网卡,一个有线一个无线网卡,点击有线

Windows Update 更新提示Error 0x8024401c错误的解决方法 Windows Update 更新提示Error 0x8024401c错误的解决方法 Jun 08, 2024 pm 12:18 PM

目录解决方法一解决方法二一、删除Windows更新的临时文件二、修复受损的系统文件三、查看并修改注册表项四、关闭网卡IPv6五、运行WindowsUpdateTroubleshootor工具进行修复六、关闭防火墙和其它相关的杀毒软件。七、关闭WidowsUpdate服务。解决方法三解决方法四华为计算机Windows更新出现“0x8024401c”报错问题现象问题原因解决方案仍未解决?最近web服务器因为系统漏洞需要更新,登录服务器之后,更新提示错误代码0x8024401c解决方法一

解决win11安装autocad时遇到的错误 解决win11安装autocad时遇到的错误 Dec 30, 2023 pm 03:23 PM

AutoCAD是最常用的图纸设计软件之一,但是我们在win11上想要使用时,有可能会遇到win11安装autocad出现错误的问题,这时候我们可以尝试修改注册表来解决。win11安装autocad出现错误:第一步,按下键盘“win徽标+r”打开运行。第二步,输入“regedit”回车打开注册表。3、将“计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System”粘贴进上方路径里。4、进入后,双击

解决Tomcat 404错误:快速实用技巧 解决Tomcat 404错误:快速实用技巧 Dec 28, 2023 am 08:05 AM

快速解决Tomcat404错误的实用技巧Tomcat是一个常用的JavaWeb应用服务器,在开发和部署JavaWeb应用时经常会用到。然而,有时候我们可能会遇到Tomcat的404错误,这意味着Tomcat无法找到请求的资源。这个错误可能由多个因素引起,但在本文中,我们将介绍一些常见的解决方案和技巧,帮助您快速解决Tomcat的404错误。检查URL路径

服务器在创建新的虚拟机时遇到错误,0x80070003 服务器在创建新的虚拟机时遇到错误,0x80070003 Feb 19, 2024 pm 02:30 PM

在使用Hyper-V创建或启动虚拟机时,如果遇到错误代码0x80070003,可能是由于权限问题、文件损坏或配置错误造成的。解决方法包括检查文件权限、修复损坏文件、确保正确配置等。可通过逐一排除不同可能性来解决此问题。整个错误消息如下所示:服务器在创建[虚拟机名]时遇到错误。无法创建新的虚拟机。无法访问配置存储:系统找不到指定的路径。(0x80070003)。导致此错误的一些可能原因包括:虚拟机文件已损坏。这可能是由于恶意软件、病毒或广告软件攻击而发生的。虽然发生这种情况的可能性很低,但你不能完

See all articles