Forum Webscript.Ru
		Программирование => PHP => Тема начата:  от 02 Июля 2002, 12:58:13
		
			
			- 
				Такая проблема:
читаю из файла построчно, затем записываю каждую строку в MySQl-базу, но не получается избавиться в конце от символа перевода строки.
Просто затем эта строка подставляется в Java Script, вот тут-то и начинаются проблемы - вставляется перенос и скрипт не работает.
Что делать?
			 
			
			- 
				eregi_replace("\\n", "", $str);
Помогает?
			 
			
			- 
				trim() каждую строку.
			
 
			
			- 
				Все, что было предложено выше не помогало.
Помогло - str_replace ("\\r\\n", "", $str);
Почему, непонятно.
			 
			
			- 
				Как это непонятно?
Значит там еще и возврат каретки был...
			 
			
			- 
				GotZfild 
trim() в данном контексте удаляет начальные и концевые пробелы. Суть же топика была не получается избавиться в конце от символа перевода строки
 Поэтому надо использовать $str=trim($str, "\\r\\n");
http://www.php.net/manual/en/function.trim.php
			 
			
			- 
				MadDog 
удаляет начальные и концевые пробелы
и не только. Он удаляет любые пустые символы, в том числе и символы перевода строки, и возврат коретки.
Например
$str = "this is a string\\t\\r\\n";
if (preg_match("![\\t\\n\\r]!", trim($str))) echo "Нашел"; else echo "Не нашел";
выведет "Не нашел"
			 
			
			- 
				GotZfild 
выведет "Не нашел"
 А ты после "\\n" в строке поставь что-нибудь еще, текст, например. И сразу увидишь совершенно другую картину. "Нашел" :)
			 
			
			- 
				
избавиться в конце 
В вопросе написано в КОНЦЕ строки.
			 
			
			- 
				Вообщето это всегда нвзывалось так:
Chop -- Remove trailing whitespace.
И в Perl-e тоже "chomp"