PHP获取访问页面HTTP状态码的实现代码

yizhihongxing

获取访问页面的HTTP状态码可以使用PHP内置的函数或者第三方库。下面分别介绍这两种方案的实现方式。

方案一:使用PHP内置的函数

PHP内置了获取HTTP状态码的函数http_response_code($code = null),使用该函数可以获取当前页面的HTTP状态码。

示例一

<?php
$url = 'https://www.baidu.com';
$ch = curl_init($url);
// 设置curl参数
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// 获取返回结果
$response = curl_exec($ch);
// 获取状态码
$status_code = http_response_code();
echo 'HTTP状态码:' . $status_code;
curl_close($ch);
?>

示例二

<?php
$url = "http://www.example.com";
$status = "";
$headers = "";

// 发送请求
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, true);  // 设置返回头信息
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 设置返回结果为字符串
$result = curl_exec($ch);

// 分离状态码和头信息
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
list($headers, $content) = explode("\r\n\r\n", $result, 2);

echo "状态码:" . $status;
?>

方案二:使用第三方库

另一种获取HTTP状态码的方式是使用第三方库,比如Guzzle,该库需要在项目中引入。

示例三

<?php
require 'vendor/autoload.php';

use GuzzleHttp\Client;

$client = new Client([
    'base_uri' => 'https://www.baidu.com',
]);

$response = $client->request('GET');
$status_code = $response->getStatusCode();

echo 'HTTP状态码:' . $status_code;
?>

示例四

<?php
require 'vendor/autoload.php';

use GuzzleHttp\Client;

$client = new Client([
    'base_uri' => 'http://www.example.com',
]);

$response = $client->request('GET', '/');
$status_code = $response->getStatusCode();

echo 'HTTP状态码:' . $status_code;
?>

以上四个示例均可以获取指定页面的HTTP状态码,不过使用第三方库可以更简洁地实现这个功能。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:PHP获取访问页面HTTP状态码的实现代码 - Python技术站

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

相关文章

  • 微信小程序组件 marquee实例详解

    微信小程序组件 marquee实例详解 什么是marquee组件? marquee组件是微信小程序自带的一种用于文字、图片等滚动展示的UI组件,可以实现字幕、公告等效果,非常适合一些需要重点宣传或广告展示的场合。 marquee组件的基本用法 marquee组件的基本用法非常简单,以下是一个简单的使用示例: <marquee direction=&qu…

    PHP 2023年5月23日
    00
  • PHP实现文件上传和多文件上传

    下面是详细讲解“PHP实现文件上传和多文件上传”的完整攻略。 文件上传 文件上传是指将文件从客户端上传到服务器,PHP实现文件上传的步骤如下: 在前端页面添加文件上传表单,例如: <form action="upload.php" method="post" enctype="multipart/for…

    PHP 2023年5月26日
    00
  • PHP数组传递是值传递而非引用传递概念纠正

    首先,我们需要了解PHP中的变量传递方式,其中,基本类型变量(如字符串、整型、布尔型等)是传值的,而对象和数组则是传引用的。由于数组既可以包含基本变量类型,又可以包含对象,因此对于数组变量的传递方式其实是有所不同的。 对于PHP中的数组变量,虽然其值传递时是通过复制数组变量的值来完成的,但其中包含的如果是对象类型,在此过程中也是传递引用的(因为PHP中的对象…

    PHP 2023年5月26日
    00
  • 微信小程序canvas写字板效果及实例

    微信小程序canvas写字板效果及实例 概述 在微信小程序中,使用canvas可以实现很多有趣的效果,如播放动画、绘制图形等等。其中,canvas写字板效果可以让用户在小程序中手写文字,增加用户体验和交互性。在本教程中,我们将详细讲解如何使用canvas实现写字板效果,并提供两个示例说明。 步骤 第一步:创建画布 在小程序页面中添加canvas标签,并设置宽…

    PHP 2023年5月23日
    00
  • php二维数组用键名分组相加实例函数

    这里是一份关于”php二维数组用键名分组相加实例函数”的攻略。 什么是php二维数组用键名分组相加? 在php中,二维数组是一种非常常见的数据类型。当我们需要对一些具有相同键名的数据进行处理时,我们需要将它们分组并相加,以得到每个组的总和。这时,就需要用到”php二维数组用键名分组相加”了。 如何实现? 在php中,我们可以使用foreach循环来遍历数组。…

    PHP 2023年5月26日
    00
  • 使用php重新实现PHP脚本引擎内置函数

    要使用 PHP 重新实现 PHP 脚本引擎内置函数,可以遵循以下步骤: 阅读 PHP 官方文档,了解要实现的内置函数的工作原理和用途。然后,可以编写 PHP 代码模仿这些内置函数的行为。 使用PHP的扩展机制,将实现的代码打包成扩展,以供 PHP 引擎加载。PHP 5 及以上版本支持 Zend 引擎的扩展机制,有助于更轻松地使用C实现功能拓展。此外,PECL…

    PHP 2023年5月27日
    00
  • 使用WAMP搭建PHP本地开发环境

    下面是关于使用WAMP搭建PHP本地开发环境的完整攻略。 WAMP是什么? WAMP 是指 Windows + Apache + MySQL + PHP 环境的缩写,是一个在 Windows 系统下对开发者友好的 Web 服务器环境。使用 WAMP,我们可以在本地搭建一个与线上环境相近的 PHP 开发环境,更加方便地进行本地开发、测试、调试。在接下来的攻略中…

    PHP 2023年5月23日
    00
  • [原创]php中&&和||逻辑运算符的高级简写(缩写条件)用法由浅入深讲解

    当前回答已经使用了标准的Markdown格式文本,但可能由于技术问题导致格式出现了问题。以下是重新排版后的回答: 基础知识 在使用PHP中的逻辑运算符时,需要掌握一些基础知识,包括逻辑运算符的基本用法、逻辑运算符的优先级、逻辑运算符的短路特性等。以下是一些常见的基础知识: 逻辑运算符的基本用法,包括&&、||、!等。 逻辑运算符的优先级,包括…

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