我有一個密碼保護的文本文件,並使其密碼保護,我使用了一個密碼保護腳本(這很好用),但它需要我將文本文件重命名爲.php在我的服務器上。這很好,但是,當我在任何瀏覽器在Windows上打開此文本文件時,我沒有看到任何新行(我曾經看到它們)瀏覽器不讀取一個PHP文件中的新行
我試過寫 - 「\ n」,「\ r」, 「\ r \ n」。我認爲它與瀏覽器認爲它是一個.php文件我猜。
我有一個密碼保護的文本文件,並使其密碼保護,我使用了一個密碼保護腳本(這很好用),但它需要我將文本文件重命名爲.php在我的服務器上。這很好,但是,當我在任何瀏覽器在Windows上打開此文本文件時,我沒有看到任何新行(我曾經看到它們)瀏覽器不讀取一個PHP文件中的新行
我試過寫 - 「\ n」,「\ r」, 「\ r \ n」。我認爲它與瀏覽器認爲它是一個.php文件我猜。
默認情況下,PHP腳本的輸出呈現爲HTML,這意味着空白被摺疊。如果您想將其更改回文本,則需要在網頁服務器或通過header()
函數將Content-Type
標題設置爲「text/plain」。
您需要使用<br>
,因爲html正在瀏覽器中呈現。
看到我對魔術師答案的評論。 – 2011-06-14 21:04:27
這是因爲服務器正在發送不同的MIME類型。它現在發送text/html
(PHP返回的默認類型)而不是text/plain
。
您的瀏覽器期待HTML。換行符與HTML中的任何其他空白區域一樣,所以它們對於您嘗試執行的操作而言基本上沒有意義。
您可以用它來修復它:
header('Content-Type: text/plain');
務必把,在你的代碼的頂部,或者至少你輸出任何東西之前。
這會導致服務器發送您期望的MIME類型。
這是因爲瀏覽器中看到的內容,HTML和在HTML換行僅僅是一個空白
我不知道我是否正確地理解你的問題,但在兩種情況下有一個解決方案:
- 你輸出的文本:在這種情況下,你必須使用
<br>
- 你想將它與文件中的新行寫:使用PHP-恆
PHP_EOL
這意味着行尾。這插入總是一個正確的休息。
如何使用文本編輯器打開文件? – Andrew 2011-06-14 20:52:18
非常感謝大家,使用
修復了它。 – Illusionist 2011-06-14 21:01:42
「它需要我將我的服務器上的文本文件重命名爲.php。」高度懷疑。 – 2011-06-14 21:02:51