2011-11-30 30 views
1

我正在處理一個簡單的腳本,它將一個txt文件發佈給它,然後顯示文件內容。但是,我遇到了保留換行符的問題。PHP上傳的文本文件換行符問題

它被保存在Windows記事本中,我認爲每個換行符都添加了CR LF,然後通過PHP表單上傳。我可以回顯整個文件的內容,但我需要一種將數據分割成新行的方法。

我已經試過做echo str_replace(array("\r\n", "\r", "\n"), '<br />', $file);nl2br($file)。都沒有工作。

我打開與`的file_get_contents文件($ _ FILES [ '文件'] [ 'tmp_name的值'])」

感謝。

+0

會用'

(filecontents)
'爲你工作嗎? – hafichuk

回答

2

您是否考慮過在PHP中使用file()函數將文件讀入數組?然後,可以根據需要

http://php.net/manual/en/function.file.php

輸出,但每條線將在陣列的單個元件。

+0

這實際上是完美的,最終我需要按行分開,然後循環遍歷所有行。謝謝! –

0

什麼工作快對我來說是複製粘貼任何文本或Excel或HTML表類型或數據的換行符類型並將其粘貼到文本區域,而不是一個inputextbox:

<textarea id="txtArea" name="txtArea" rows="40" cols="170"></textarea> 
<br> 
<input type="submit" value="split lines into array" /> 
形式接收文件

$txtArea =''; 
$txtArea = $_POST['txtArea']; 
$TA = $_POST['txtArea']; 
$string = $TA; 
$array = preg_split ('/$\R?^/m', $string); 
// or any of these: 
// $array = explode(PHP_EOL,$string); 
// $array = explode("\n", $txtArea); 
echo "<br>A0: ".$array[0]; 
echo "<br>A1: "[email protected]$array[1]; 
echo "<br>A2: "[email protected]$array[2];