php簡單檢測404頁面的方法示例
本文實例講述了php簡單檢測404頁面的方法。分享給大家供大家參考,具體如下:
需求描述:
檢測給定的url是否是404頁面。
方式一:
使用file_get_contents函數(shù),可以讀取web中的網(wǎng)頁或者文件。
如果遇到404頁面,則會返回false,否則返回相應(yīng)的網(wǎng)頁內(nèi)容。
使用該函數(shù)有兩點需要注意:
1.file_get_contents在讀取不存在的頁面時,會報一個warning,所以最好對這里的警告進行屏蔽操作。
2.file_get_contents默認會讀取頁面的所有內(nèi)容,然后再返回。為了提交讀取速度,我們可以限制只讀取10個字節(jié)就返回。
<?php $res = @file_get_contents("http://www.baidu.com",null,null,0,10); if($res){ echo $res; }else{ echo "404"; }
方式二:
我們要判斷該頁面是否是404頁面,這個可以通過網(wǎng)頁返回的狀態(tài)碼來判斷。
使用該方法在頁面404的時候并不會報警告。
因為我們只需要狀態(tài)碼,所以我們不需要讀取網(wǎng)頁的內(nèi)容,可以通過設(shè)置CURLOPT_NOBODY參數(shù),不讀取網(wǎng)頁內(nèi)容,來縮短程序運行的時間。
<?php $ch = curl_init("http://www.baidu.com"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_NOBODY, 1); $res = curl_exec($ch); $code = curl_getinfo($ch,CURLINFO_HTTP_CODE); if($code == 404){ echo "404"; }else{ echo $code; }
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php socket用法總結(jié)》、《php字符串(string)用法總結(jié)》、《PHP數(shù)學運算技巧總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計算法總結(jié)》及《PHP網(wǎng)絡(luò)編程技巧總結(jié)》
希望本文所述對大家PHP程序設(shè)計有所幫助。
相關(guān)文章
大家都應(yīng)該掌握的PHP關(guān)聯(lián)數(shù)組使用技巧
這篇文章主要為大家分享了10個必須掌握的PHP關(guān)聯(lián)數(shù)組使用技巧,感興趣的小伙伴們可以參考一下2015-12-12PHP+ajax實現(xiàn)獲取新聞數(shù)據(jù)簡單示例
這篇文章主要介紹了PHP+ajax實現(xiàn)獲取新聞數(shù)據(jù),涉及php ajax交互獲取信息及json格式處理的相關(guān)操作技巧,需要的朋友可以參考下2018-05-05PHP反射類ReflectionClass和ReflectionObject的使用方法
PHP反射類ReflectionClass和ReflectionObject2013-11-11解析php做推送服務(wù)端實現(xiàn)ios消息推送
本篇文章是對php做推送服務(wù)端實現(xiàn)ios消息推送的方法進行了詳細的分析介紹,需要的朋友參考下2013-07-07php實現(xiàn)mysql數(shù)據(jù)庫連接操作及用戶管理
這篇文章主要介紹了php實現(xiàn)mysql數(shù)據(jù)庫連接操作及用戶管理的相關(guān)代碼,需要的朋友可以參考下2015-11-11