Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Запись в файл.


Автор: Ярлык 6.9.2003, 09:47
Как сделать запись в файл, в определенную строку файла т.е.


Файл
-------------
1.Мама
2.Папа
3.(сюда добавить новые данные)
4.Баба

Автор: Kefir 6.9.2003, 09:58
nu, mozno, naprimer prosmotret fajl na '\n' - t.e. dlja zapisi na vtoruju stroku, nado projti 1 '\n', na 18ju stroku - nado proti 17 '\n'

Автор: buddy 6.9.2003, 11:38
насколько я помню, есть ф-ия fseek, которая устанавливает курсор в определённую позицию в фале.

А ещё можно считывать файл построчно до \n (тоесть конца строки), и вычислять нужную тебе строку (обычным подсчётом пройденных строк).

Автор: Ярлык 14.9.2003, 17:12
Пытался, не получается, напишите пожалуйста пример кода, очень прошу!!!

Автор: IZ@TOP 15.9.2003, 09:31
Код


$line = file( $file ); // читаем файл в строки
$i = 0;
while( $i < count( $line ) ) { // обходим массив в поисках нужной строки
  if( $i == $num ) { // принять во внимение тот факт что отсчет строк накчинается с нуля
       $line[$i] = $zamena; // если строка та которая нужна, меняем в ней значение на то что надо
  }
  $i++;
}
// Дальше просто записываешь массив обратно в файл ... а вообще думать надо !

Автор: MuToGeN 15.9.2003, 09:37
Если исходный фаил имееет вид
1. ааааааааа
2. ббббббббб
3.
4. вввввввввв
То:

Код
$addText="гггггггггг"; // текст, который надо добавить к строке
$n=2; // номер строки, к которой надо добавить данные
$file=file("./test.txt"); // загружаем имеющийся фаил в массив
$file[$n]=trim($file[$n]).$text."\n"; // убираем \n с конца нужной строки, добавляем текст и добавляем \n
$fp=fopen("./test.txt","w"); // открываем фаил для записи
foreach($file as $line){
   fwrite($fp,$line); // сохраняем построчно
}
fclose($fp); // закрываем

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)