Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   ф-ции fopen fwrite (https://forum.antichat.xyz/showthread.php?t=32544)

Alien_z 02.02.2007 05:46

ф-ции fopen fwrite
 
Вопрос такой, можно ли записать в файл строку, но не в конец файла, а в начало и чтобы уже имеющиеся записи остались(т.е. соответственно сместились на одну строку ниже)???
PHP код:

$str="текст";
 
$file=fopen("history.dat",'r+');
 
fwrite($file$str); 

так он(php) удаляет все что было....

x0x01 02.02.2007 12:48

такой функции нет, но можно создать новый файл записать что надо,
добавить из оригинала в конец и скопировать новый на место старого ж-)

blackybr 02.02.2007 13:09

небольшая функция реализующая это

PHP код:

<?php
$result 
append_to_top("myfile.txt",$data_to_write);

function 
append_to_top($data_file,$data) {

$original_data file_get_contents($data_file);

$fp fopen($data_file,"w+");
fputs($fp,$data_to_write "\r\n");
fputs($fp,$original_data);
fclose($fp);
return();
?>


Isis 02.02.2007 14:00

Цитата:

Сообщение от x0x01
такой функции нет, но можно создать новый файл записать что надо,
добавить из оригинала в конец и скопировать новый на место старого ж-)

Мда......читай маны

Посже выложу как надо

_Great_ 02.02.2007 14:08

Rtfm

Alien_z 02.02.2007 18:08

Сделал так как предложил x0x01, вроде работает....но хотелось бы услышать еще методы...

_Great_ 02.02.2007 18:46

blackybr предложил самый разумный

KSURi 02.02.2007 19:12

а что разве
Код:

seek(FH,POS,WHENCE)
нету в рнр?
Если есть, то просто сразу после fopen ставь seek($fh,0,0)

_Great_ 02.02.2007 19:32

KSURi, имеется в виду запись не поверх данных в начале, а перед ними. seek'ом ты переместишься на начало и все.

KSURi 02.02.2007 21:45

сори, невнимательно читал =/


Время: 14:19