PHP下判断网址是否有效的代码

yizhihongxing

判断网址是否有效,可以通过使用PHP内置函数 get_headers() 或者使用 cURL 扩展。下面分别介绍这两种方法的使用。

使用 get_headers() 函数判断网址是否有效

get_headers() 函数可以获取海量 HTTP 请求响应头信息,我们可以利用这个函数来判断网址是否有效。

代码和注释如下:

$url = 'http://www.example.com';
$headers = @get_headers($url);
// 判断 HTTP 响应状态码是否为 200,判断请求是否成功
if(strpos($headers[0],'200') !== false){
    echo '网址有效';
} else {
    echo '网址无效';
}

上述代码中使用了 @ 符号来抑制函数的警告提示,因为如果访问不到 URL 则会报错。我们把警告提示关闭后,可以在代码里进行判断。

使用 cURL 扩展判断网址是否有效

如果 PHP 没有安装 cURL 扩展,我们需要先安装这个扩展。然后我们可以使用 cURL 执行 HTTP 请求,并获取响应信息进行判断。

代码和注释如下:

$url = 'http://www.example.com';
$curl = curl_init($url);
// 设置 cURL 执行选项
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
// 获取 HTTP 响应状态码
$response = curl_exec($curl);
$httpStatusCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
// 判断 HTTP 响应状态码是否为 200,判断请求是否成功
if(curl_errno($curl) || $httpStatusCode != 200) {
    echo '网址无效';
} else {
    echo '网址有效';
}

上述代码先使用 curl_init() 函数初始化一个 cURL 请求的句柄,然后通过 curl_setopt() 函数指定一系列选项,例如禁用 SSL 检查,设置执行的 URL 等等。通过 curl_exec() 函数执行 cURL 请求,并获取响应内容。最后使用 curl_getinfo() 函数获取 HTTP 响应状态码,根据状态码来判断请求是否成功。通过 curl_errno() 函数判断在 cURL 传输过程中有没有发生错误。

以上两种方式都可以实现对网址有效性进行判断。你可以根据具体需求进行选择。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:PHP下判断网址是否有效的代码 - Python技术站

(0)
上一篇 2023年5月23日
下一篇 2023年5月23日

相关文章

  • PHP生成二维码的两个方法和实例

    下面我将详细讲解“PHP生成二维码的两个方法和实例”的完整攻略。 一、PHP生成二维码的两个方法 1.使用QRcode类 QRcode类是一个PHP库,可以将数据转换为QR码图片,然后通过浏览器输出。它的使用方法如下: include_once(‘qrlib.php’); QRcode::png(‘My Text’); 其中,’My Text’是要生成二维码…

    PHP 2023年5月23日
    00
  • php unlink()函数使用教程

    下面是详细讲解 PHP unlink() 函数使用教程的完整攻略。 1. 什么是PHP unlink()函数 PHP unlink() 函数用于删除文件,它的基本语法如下: bool unlink ( string $filename [, resource $context ] ) 其中,$filename 参数表示要删除的文件路径及文件名,$contex…

    PHP 2023年5月27日
    00
  • JSON用法之将PHP数组转JS数组,JS如何接收PHP数组

    将PHP数组转JS数组主要是为了在客户端使用JavaScript操作这些数据,一般使用JSON将PHP数组序列化,并将序列化后的结果传递到客户端,客户端通过JSON.parse()方法解析JSON数据,进而获得PHP数组转换后的JS数组。 以下是详细步骤和示例说明: 1. PHP数组转JSON 在PHP中,使用json_encode()函数将PHP数组转为J…

    PHP 2023年5月26日
    00
  • 解决启动php-fpm后访问不到php文件的办法

    解决启动php-fpm后访问不到php文件的问题,主要是由于Nginx没有正确地连接到php-fpm或php-fpm配置有误所导致的。为了解决这个问题,可以按照以下步骤进行操作: 确认Nginx是否正确连接php-fpm 确认php-fpm是否启动,并监听正确的IP和端口。可以使用sudo netstat -lnp | grep php-fpm来查看。如果没…

    PHP 2023年5月24日
    00
  • 浅谈PHP设计模式的模板方法模式

    简介: 模板方法模式,是行为型的设计模式。定义一个操作中的算法的骨架,而将一些步骤延迟到子类当中,使得子类可以不改变一个算法的结构即可重新定义该算法的某些特定步骤。通俗讲,模板方法模式是偏向继承的设计模式,当子类有重复的动作时候,可将他们提取出来,放在父类进行处理。 适用场景: 算法结构相同但是算法不同的场景下使用,父类控制整体,子类具体实现。 优点: 体现…

    PHP 2023年4月18日
    00
  • PHP多维数组排序array详解

    PHP多维数组排序array详解 在PHP中,数组可以看作是一个集合,而集合是由等级相同的元素组成的,因此数组就有了多维度的概念。在实际开发中,我们经常需要按照指定的规则对多维数组进行排序,这个时候,我们就需要使用PHP的排序函数来实现。 数组排序方法 在PHP中,常用的数组排序方法主要有以下几种: sort():将数组按照升序排列。 rsort():将数组…

    PHP 2023年5月26日
    00
  • php字符串分割函数用法实例

    当我们处理字符串时,经常需要把一个字符串分割成多个部分。在PHP中,有很多内置函数可以用来分割字符串,如explode()、str_split()、preg_split()等。本文将深入讲解PHP中字符串分割函数的用法实例。 一、explode()函数 explode()用来将字符串分割成数组。语法如下: array explode ( string $de…

    PHP 2023年5月26日
    00
  • php切割页面div内容的实现代码分享

    让我为您详细讲解一下“php切割页面div内容的实现代码分享”完整攻略。 1. 确认需要切割的页面 首先,需要确认需要切割的页面。在这个页面中,需要确定需要切割的 div 的选择器,这样才能准确地获取需要切割的内容。 2. 使用php函数获取页面内容 接下来,需要使用PHP的 file_get_contents() 函数获取需要切割的页面的内容。这个函数能够…

    PHP 2023年5月23日
    00
合作推广
合作推广
分享本页
返回顶部