2011-05-23 45 views
9

有人能解釋這個PHP代碼有什麼問題嗎? (PHP版本5.3.5)PHP:格式錯誤的標題

<?php 
    header('Bad Request', true, 400); 
    exit; 

我得到一個狀態的400而在Apache的錯誤日誌500,而不是我從劇本

畸形的包頭。 Bad header = Bad Request:listener.php

我在做什麼錯在這裏?我誤解了the docs

回答

24

你必須寫:

header('HTTP/1.0 400 Bad Request', true, 400); 
+0

謝謝!爲什麼不能僅僅根據自己的想法...... *嘆息* – Svish 2011-05-23 21:53:44

+2

我發現你並不需要HTTP響應代碼的兩個可選參數 - 'header('HTTP/1.0 400 Bad Request') '也一樣。 – HorusKol 2011-05-23 23:48:19

+0

@HorusKol,是的,但我必須說我覺得很愚蠢。狀態碼是唯一必須要求的。 PHP不應該知道正確的文本和東西本身? – Svish 2011-05-24 04:36:25