2015-02-23 2 views
0

mytext.txtИзменить строку в файл с помощью PHP

У меня есть файл с именем, как mytext.txt и содержат некоторые данные, как показано ниже:

This is the file contain new data. 

That have some error. 

that need to fix. 

dummy data 

I am trying to fix 

This is the file contain new data. 

That have some error. 

that need to fix. 

dummy data 

В этом файле нужно изменить строка «Я пытаюсь исправить» до «, что выходит за рамки». И напишите в mytext.txt.

Может ли кто-нибудь помочь мне сделать это?

+0

Каковы ваши ошибки? –

+0

Как @KheshavSewnundun сказал: Какие проблемы вы получили? Что вы пробовали? – PhoneixS

ответ

1

попробовать это:

$reading = fopen('myfile', 'r'); 
$writing = fopen('myfile.tmp', 'w'); 

$replaced = false; 

while (!feof($reading)) { 
    $line = fgets($reading); 
    if (stristr($line,'certain word')) { 
    $line = "replacement line!\n"; 
    $replaced = true; 
    } 
    fputs($writing, $line); 
} 
fclose($reading); fclose($writing); 
// might as well not overwrite the file if we didn't replace anything 
if ($replaced) 
{ 
    rename('myfile.tmp', 'myfile'); 
} else { 
    unlink('myfile.tmp'); 
} 
1

Если размер файла действительно этот маленький это самый простой способ, я могу думать:

$text = file_get_contents('mytext.txt'); 
$text = str_replace('I am trying to fix', 'that is out of scope', $text); 
file_put_contents('mytext.txt', $text); 

Бламу

Смежные вопросы