在PHP中,检查某个链接是否存在,有两个方法,一个是使用curl,另外一个是
获得HTTP的header的响应码,如果是200的则是OK,如果是404的话就找不到了,例子如下:
1) 使用get_headers:
<?php
$url = "http://www.abc.com/demo.jpg";
$headers = @get_headers($url);
if($headers[0] == 'HTTP/1.1 404 Not Found')
{
echo "URL not Exists";
}
else
{
echo "URL Exists";
}
?>
get_headers中有第2个参数,是true的话,结果将会是个关联数组
2) 使用CURL
<?php
$url = "http://www.domain.com/demo.jpg";
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_NOBODY, true);
$result = curl_exec($curl);
if ($result !== false)
{
$statusCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
if ($statusCode == 200)
{
echo "URL Exists"
}
}
else
{
echo "URL not Exists";
}
?>
CURLOPT_NOBODY指定了只是建立连接,而不取整个报文的内容
php中检查某个链接是否存在的两个方法
原创
©著作权归作者所有:来自51CTO博客作者mb5c80f4c73b73a的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
win11连接mysql命令
今天准备用c连接MySQL数据库,无论怎么配置,老是出错。 代码如下: #include <windows.h> #include <stdio.h> #include <string.h> #include <mysql.h> #pragma comment (lib, "libmysql.lib") #pragma comme
win11连接mysql命令 Windows MySQL 64位 Visual Studio 2010