Автор Тема: Need help  (Прочитано 3989 раз)

0 Пользователей и 1 Гость просматривают эту тему.

  • Гость
Need help
« : 02 Июля 2002, 12:58:13 »
Такая проблема:
читаю из файла построчно, затем записываю каждую строку в MySQl-базу, но не получается избавиться в конце от символа перевода строки.

Просто затем эта строка подставляется в Java Script, вот тут-то и начинаются проблемы - вставляется перенос и скрипт не работает.

Что делать?

Оффлайн .Sm@sH.

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 30
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.cs-mapping.com.ua
Need help
« Ответ #1 : 02 Июля 2002, 13:58:19 »
eregi_replace("\\n", "", $str);

Помогает?
URL: http://www.cs-mapping.com.ua
E-mail: smash@cs-mapping.com.ua

Оффлайн GotZfild

  • Универсал
  • Старожил
  • ****
  • Сообщений: 456
  • +0/-0
  • 2
    • Просмотр профиля
    • http://myphp.dem.ru
Need help
« Ответ #2 : 02 Июля 2002, 14:15:55 »
trim() каждую строку.
После трех дней без программирования жизнь становится бессмысленной.

  • Гость
Need help
« Ответ #3 : 02 Июля 2002, 15:01:37 »
Все, что было предложено выше не помогало.

Помогло - str_replace ("\\r\\n", "", $str);

Почему, непонятно.

Оффлайн .Sm@sH.

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 30
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.cs-mapping.com.ua
Need help
« Ответ #4 : 02 Июля 2002, 15:05:33 »
Как это непонятно?
Значит там еще и возврат каретки был...
URL: http://www.cs-mapping.com.ua
E-mail: smash@cs-mapping.com.ua

Оффлайн MadDog

  • Главный Металликолог
  • Ветеран
  • *****
  • Сообщений: 679
  • +0/-0
  • 2
    • Просмотр профиля
Need help
« Ответ #5 : 02 Июля 2002, 15:35:55 »
GotZfild
trim() в данном контексте удаляет начальные и концевые пробелы. Суть же топика была
Цитировать
не получается избавиться в конце от символа перевода строки
Поэтому надо использовать $str=trim($str"\\r\\n");

http://www.php.net/manual/en/function.trim.php
So let it be written
So let it be done I\'m creeping death

Оффлайн GotZfild

  • Универсал
  • Старожил
  • ****
  • Сообщений: 456
  • +0/-0
  • 2
    • Просмотр профиля
    • http://myphp.dem.ru
Need help
« Ответ #6 : 02 Июля 2002, 16:20:54 »
MadDog
Цитировать
удаляет начальные и концевые пробелы

и не только. Он удаляет любые пустые символы, в том числе и символы перевода строки, и возврат коретки.
Например
$str "this is a string\\t\\r\\n";
if (
preg_match("![\\t\\n\\r]!"trim($str))) echo "Нашел"; else echo "Не нашел";

выведет "Не нашел"
После трех дней без программирования жизнь становится бессмысленной.

Оффлайн MadDog

  • Главный Металликолог
  • Ветеран
  • *****
  • Сообщений: 679
  • +0/-0
  • 2
    • Просмотр профиля
Need help
« Ответ #7 : 02 Июля 2002, 18:01:29 »
GotZfild
Цитировать
выведет "Не нашел"
А ты после "\\n" в строке поставь что-нибудь еще, текст, например. И сразу увидишь совершенно другую картину. "Нашел" :)
So let it be written
So let it be done I\'m creeping death

Оффлайн GotZfild

  • Универсал
  • Старожил
  • ****
  • Сообщений: 456
  • +0/-0
  • 2
    • Просмотр профиля
    • http://myphp.dem.ru
Need help
« Ответ #8 : 02 Июля 2002, 18:12:47 »
Цитировать
избавиться в конце

В вопросе написано в КОНЦЕ строки.
После трех дней без программирования жизнь становится бессмысленной.

Оффлайн Oak

  • Дерево
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1481
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Need help
« Ответ #9 : 02 Июля 2002, 21:44:30 »
Вообщето это всегда нвзывалось так:
Chop -- Remove trailing whitespace.

И в Perl-e тоже "chomp"
[основной броузер - SeaMonkey] Netscape Communicator 4 - is the best :) // see sources

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28