使用php判断url是否可以打开的解决办法:
1、使用file_get_contents函数,不过缺点是,如果url无法访问,会出现终止程序问题
2、使用curl返回,然后判断是否正确执行
3、使用get_headers函数,根据HTTP返回值查看是否有200
get_headers需要支持
1、php_openssl支持 查看phpinfo看看是否开启
2、allow_url_fopen=on 修改php.ini,运行使用远程打开
函数介绍:
array get_headers ( string $url [, int $format ] )
get_headers()返回一个数组,包含有服务器响应一个 HTTP 请求所发送的标头。如果失败则返回 FALSE 并发出一条 E_WARNING 级别的错误信息。如果将可选的 format 参数设为 1,则 get_headers() 会解析相应的信息并设定数组的键名。 例如:
实例:
<?php $url = "http://cn.php.net/images/php.gif"; $array = get_headers($url,1); if(preg_match('/200/',$array[0])){ echo "<pre/>"; print_r($array); }else{ echo "无效url资源!"; }
结果:
优缺点:
需要allow_url_fopen=on 开启,有点和file_get_contents函数使用条件类似,但是返回值比较少,可以使用function_exists判断该方法是否可以使用。
推荐教程:PHP视频教程
以上是php判断url是否可以打开的详细内容。更多信息请关注PHP中文网其他相关文章!