php狀態碼
① php header 返回狀態嗎
面試時很多人問我這個,記錄一下200是ok,404表示頁面未找到.
HTTP協議狀態碼,調用函數時候只需要將$num賦予一個下表中的已知值就直接會返回狀態了。
<?PHP
/**
*
*HTTP協議狀態碼,調用函數時候只需要將$num賦予一個下表中的已知值就直接會返回狀態了。
*@paramint$num
*/
functionhttps($num){
$http=array(
100=>"HTTP/1.1100Continue",
101=>"HTTP/1.1101SwitchingProtocols",
200=>"HTTP/1.1200OK",
201=>"HTTP/1.1201Created",
202=>"HTTP/1.1202Accepted",
203=>"HTTP/1.1203Non-AuthoritativeInformation",
204=>"HTTP/1.1204NoContent",
205=>"HTTP/1.1205ResetContent",
206=>"HTTP/1.1206PartialContent",
300=>"HTTP/1.1300MultipleChoices",
301=>"HTTP/1.1301MovedPermanently",
302=>"HTTP/1.1302Found",
303=>"HTTP/1.1303SeeOther",
304=>"HTTP/1.1304NotModified",
305=>"HTTP/1.1305UseProxy",
307=>"HTTP/1.1307TemporaryRedirect",
400=>"HTTP/1.1400BadRequest",
401=>"HTTP/1.1401Unauthorized",
402=>"HTTP/1.1402PaymentRequired",
403=>"HTTP/1.1403Forbidden",
404=>"HTTP/1.1404NotFound",
405=>"HTTP/1.1405MethodNotAllowed",
406=>"HTTP/1.1406NotAcceptable",
407=>"HTTP/1.",
408=>"HTTP/1.1408RequestTime-out",
409=>"HTTP/1.1409Conflict",
410=>"HTTP/1.1410Gone",
411=>"HTTP/1.1411LengthRequired",
412=>"HTTP/1.1412PreconditionFailed",
413=>"HTTP/1.1413RequestEntityTooLarge",
414=>"HTTP/1.1414Request-URITooLarge",
415=>"HTTP/1.1415UnsupportedMediaType",
416=>"HTTP/1.",
417=>"HTTP/1.1417ExpectationFailed",
500=>"HTTP/1.1500InternalServerError",
501=>"HTTP/1.1501NotImplemented",
502=>"HTTP/1.1502BadGateway",
503=>"HTTP/1.1503ServiceUnavailable",
504=>"HTTP/1.1504GatewayTime-out"
);
header($http[$num]);
}
?>
@header('HTTP/1.0404NotFound');
② PHP 介面的狀態碼返回問題
你是要取到B處理完後的返回狀態,還是說要取B處理完後調用A的a.php時所帶的參數,如果只是取所帶的參數,你在a.php 裡面直接$_GET['result']就取到了,
③ PHP獲取客戶端狀態碼返回200或404
今天做了個程序,需要取得HTTP狀態碼,於是繼續搜索無力,果然中文資源非常少,於是去查了PHP的手冊。
找到了curl這個小工具。
使用curl需要在php.ini中設置啟用才行 >< Windows的伺服器中,打開php.ini,找到:
extension=php_curl.dll
去掉前面的注釋既可 。
實現代碼如下:
$curl = curl_init();
$url=』http://www.smdcn.net』;
curl_setopt($curl, CURLOPT_URL, $url); //設置URL
curl_setopt($curl, CURLOPT_HEADER, 1); //獲取Header
curl_setopt($curl,CURLOPT_NOBODY,true); //Body就不要了吧,我們只是需要Head
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); //數據存到成字元串吧,別給我直接輸出到屏幕了
$data = curl_exec($curl); //開始執行啦~
echo curl_getinfo($curl,CURLINFO_HTTP_CODE); //我知道HTTPSTAT碼哦~
curl_close($curl); //用完記得關掉他
完成~~
④ thinkphp框架 頁面正常打開 返回狀態碼為404
把你的緩存清空,debug為true的時候是不使用緩存的,所以正常。為false的時候使用了緩存。記得清空所有的緩存
⑤ 訪問伺服器上的PHP文件出錯,如何看到具體錯誤信息
首先看下瀏覽器返回的狀態碼,404表示你的PHP項目中木有默認頁,500表示你的PHP項目中某個文件有硬性錯誤,接著呢,到php.ini中開啟下出錯開關,就可以發現是PHP函數或變數出錯還是mysql連接出錯了。。。,最好放截圖。
平常如果遇到問題,可以多去後盾人看一些相關的視頻,看不懂多看幾遍,總會有用的。
⑥ PHP的exec函數調用cmd命令之後返回的狀態碼為128是怎麼回事
那要看具體調用的是什麼命令
exec(<cmd>, <&output>, <&exit_code>)
如果執行的命令是有輸出信息的,你可以把 output輸出出來看看錯誤信息
⑦ PHP curl 獲取響應的狀態嗎
PHP curl可以從伺服器端模擬一個http請求,例如抓取網頁、模擬登陸等。根據選項設置,可以在curl_exec的返回結果中獲取到響應頭和body,但這沒有響應的狀態嗎。想要獲取狀態碼,需要在執行curl_exec後再通過curl_getinfo來獲取。例如:
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,'http://www.google.com.hk');
curl_setopt($ch,CURLOPT_TIMEOUT,200);
curl_setopt($ch,CURLOPT_HEADER,FALSE);
curl_setopt($ch,CURLOPT_NOBODY,FALSE);
#curl_setopt($ch,CURLOPT_POSTFIELDS,"username=".$username."&password=".$password);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,TRUE);
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,FALSE);
curl_setopt($ch,CURLOPT_CUSTOMREQUEST,'GET');
curl_exec($ch);
$httpCode=curl_getinfo($ch,CURLINFO_HTTP_CODE);//獲取
⑧ php 怎麼獲得狀態碼
<?php
header("content-type:text/html;charset=utf-8");
$url="http:";
$url.="//www";
$url.=".";
$url.=".com";
$handle=get_headers($url);
echo "狀態碼為:".$handle[0];
?>
//狀態碼為:HTTP/1.1 200 OK