Загруженные текстовые файлы PHP проблема с разрывами строк - PullRequest
1 голос
/ 30 ноября 2011

Я работаю над простым сценарием, который отправляет в него текстовый файл, а затем отображает содержимое файла. Однако у меня возникли проблемы с сохранением разрывов строк.

Он сохраняется с помощью блокнота Windows, который, я думаю, добавляет CR LF для каждого переноса строки, а затем загружается через форму PHP. Я могу отобразить все содержимое файла, но мне нужен способ разбить данные на новые строки.

Я уже пытался сделать echo str_replace(array("\r\n", "\r", "\n"), '<br />', $file); и nl2br($file). Ни один не работал.

Я открываю файл с помощью `file_get_contents ($ _ FILES ['file'] ['tmp_name']) '

Спасибо.

Ответы [ 2 ]

2 голосов
/ 30 ноября 2011

Рассматривали ли вы чтение файла в массив с помощью функции file() в PHP?

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

Тогда вы можете выводить по мере необходимости, но каждая строка будет водин элемент массива.

0 голосов
/ 29 августа 2013

Что работает быстрее для меня, так это скопировать и вставить любой текст или таблицу типа 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: ".@$array[1];
 echo "<br>A2: ".@$array[2];
...