Замена первой строки в текстовом файле

Тема в разделе "PHP", создана пользователем Artu, 4 апр 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. Artu

    Artu Постоялец

    Регистр.:
    3 мар 2009
    Сообщения:
    75
    Симпатии:
    3
    Вот набросал:

    Код:
    <?php
    
        $f = fopen('temp\order.xml', "r+t");
        $headerXML=fgets($f);
        fseek($f,0);
        $headerXML='<?xml version="1.0" encoding="windows-1251"?>';
        fputs($f,$headerXML);
        fclose($f);
    ?>
    Но новый $headerXML длиннее чем старый,поэтому он съедает символ перевода строки и часть следующей строки.Как правильно заменить?
     
  2. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    590
    Считай файл целиком, замени первую строку и сохрани.
     
  3. Artu

    Artu Постоялец

    Регистр.:
    3 мар 2009
    Сообщения:
    75
    Симпатии:
    3
    Так и сделал.
     
  4. pavel012007

    pavel012007

    Регистр.:
    12 мар 2008
    Сообщения:
    210
    Симпатии:
    117
    Или в "temp\order.xml" дополните первую строку пробелами до длины нового $headerXML. Будет и Ваш код работать.
     
Статус темы:
Закрыта.