2016年11月30日 星期三

PHP Warning: Header may not contain more than a single header, new line detected in xxxx.php on line xxx 解決方法

剛剛收到一個回覆,運作很久的程式忽然無法動了,看了一下error log 出現以下錯誤
PHP Warning: Header may not contain more than a single header, new line detected in xxxx.php on line xxx

google了很久,抓不到原因,字面上是說你有太多header在運作,但是我把所有header都刪掉了,只剩一個還是出現這個錯誤,後來終於google到一篇,是因為我用header location進行轉址,但是轉址過去的url變數含有換行符號,所以把換行符號過濾掉即可

$url = preg_replace('/\s+/', '', $url);

參考資料: