За последние 24 часа нас посетили 41142 программиста и 1813 роботов. Сейчас ищут 1045 программистов ...

Как добавить новую строку в файл

Тема в разделе "PHP для новичков", создана пользователем Sinsir, 30 сен 2009.

  1. Sinsir

    Sinsir Активный пользователь

    С нами с:
    27 май 2009
    Сообщения:
    60
    Симпатии:
    0
    Мне нужно сохранить данные в текстовом файле командой fopen. Но они все сохраняютса в одну строку. Как сделать переход на следующую строку?
     
  2. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    PHP:
    1. $str .= PHP_EOL;
    2.  
    3. fwrite($fh,$str):
    Где-то так.
     
  3. Mr.M.I.T.

    Mr.M.I.T. Старожил

    С нами с:
    28 янв 2008
    Сообщения:
    4.586
    Симпатии:
    1
    Адрес:
    у тебя канфетка?
  4. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    Настоятельно рекомендую все же PHP_EOL, поскольку это платформонезависимо :)
     
  5. Frozen

    Frozen Активный пользователь

    С нами с:
    20 окт 2008
    Сообщения:
    540
    Симпатии:
    0
    Адрес:
    Москва
    как будто чтото изменится
     
  6. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    А ты проверь что будет добавляться под Unix и под Win
     
  7. Mr.M.I.T.

    Mr.M.I.T. Старожил

    С нами с:
    28 янв 2008
    Сообщения:
    4.586
    Симпатии:
    1
    Адрес:
    у тебя канфетка?
    =)))
     
  8. nimistar

    nimistar Активный пользователь

    С нами с:
    30 май 2007
    Сообщения:
    919
    Симпатии:
    0
    сообственно я уже давно непарюсь на эту тему ... и всегда использую \n - ибо потом оперировать легче чем двумя символами, а при чтении - указанное выше правило - само все приводится и понимается системой как надо

    Вообщем - не партись :)
     
  9. Sinsir

    Sinsir Активный пользователь

    С нами с:
    27 май 2009
    Сообщения:
    60
    Симпатии:
    0
    Спасибо за подсказку но у меня возникла в связи с этим сразу другая проблема.

    $znak=$_REQUEST["zn"];// получаем данные из формы

    $znaks="\r\n".=$znak;//пытаемся записать данные в файл с новой строки, но неполучаетса.
    тоесть я могу сначала записать данные ($znaks=$znak.="\r\n")а потом сменить с троку но наоборот нехочет :(

    $filename="data.txt";
    $filepointer=fopen($filename,"a+");
    fwrite ($filepointer,"$znaks");
    fclose ($filepointer);
    $filename="data.txt";
    $filepointer=fopen ($filename,"r");
    $array=file ($filename);
    fclose ($filepointer);
    echo array[1]// необходимо вывести вторую строку из текстового фала data.txt
    Как мне сделать перенос перед полученными данными, чтобы данные записывались с новой строки?
     
  10. nimistar

    nimistar Активный пользователь

    С нами с:
    30 май 2007
    Сообщения:
    919
    Симпатии:
    0
    $znaks="\r\n".=$znak; // хрень
    >>$znaks="\r\n".$znak;


    filename="data.txt";
    $filepointer=fopen($filename,"a+");
    fwrite ($filepointer,"$znaks");
    fclose ($filepointer);
    $filename="data.txt";
    $filepointer=fopen ($filename,"r");
    $array=file ($filename);
    fclose ($filepointer);
    echo $array[1-1]; /* или */ array_unshift($array,array(0=>'')); /* <- почледнее не проверял, но вроде как-то так*/
     
  11. Sinsir

    Sinsir Активный пользователь

    С нами с:
    27 май 2009
    Сообщения:
    60
    Симпатии:
    0
    Спасибо. Заработало!
    :)