Редактиране на файл чрез PHP
  Значи имам следният проблем:
 
 
 
  Код:
 
<?php
 
$file=file_get_contents ('./име_на_файл');
 
$new_file = str_replace('текст', 'текст1', $file);
 
unlink('./име_на_файл');
 
$handle=fopen('име_на_файл','a');
 
fwrite($handle, $new_file);
 
fclose($handle);
 
?>
  
 
Проблема на това нещо, е че ако 'текст' е част от някакъв друг текст примерно искам да заместя думата 'app' с думата 'exe', ако някъде във файла има 'apple' ще се получи 'exele'. Целта е да се направи само 1 заместване (или колкото му кажа аз) и да престане.
 
Предварително благодаря.
     Редактиране на файл чрез PHP
  <blockquote id="quote"><font size="1" id="quote"><b id="quote">quote:</b id="quote"></font id="quote"><table border="0" id="quote"><tr id="quote"><td class="quote" id="quote"><font size="1" id="quote">Значи имам следният проблем:
 
 
 
  Код:
 
<?php
 
$file=file_get_contents ('./име_на_файл');
 
$new_file = str_replace('текст', 'текст1', $file);
 
unlink('./име_на_файл');
 
$handle=fopen('име_на_файл','a');
 
fwrite($handle, $new_file);
 
fclose($handle);
 
?>
  
 
Проблема на това нещо, е че ако 'текст' е част от някакъв друг текст примерно искам да заместя думата 'app' с думата 'exe', ако някъде във файла има 'apple' ще се получи 'exele'. Целта е да се направи само 1 заместване (или колкото му кажа аз) и да престане.
 
Предварително благодаря.
 
 
 
 <div align="right">Originally posted by The Mask*-*29/03/2004*:* 14:58:38</div id="right">
 
</td id="quote"></tr id="quote"></table id="quote"></blockquote id="quote"><font size="2" id="quote"></font id="quote">
 
 
 
В PHP 5 функцията има четвърти параметър, с който задаваш броя замени, ама ако си с по-ниска версия без твоя функция не виждам как би станало... Ето ти вариант на функция, ама сега нямам възможност да я тествам - надявам се да работи [;)]:
 
  Код:
 
<?php
 
 
 
function str_replace_count($text,$text1,$file,$count)
 
{
 
   $newfile = $file;
 
   $pos = strpos($file,$text);
 
   if ($pos !== FALSE)
 
   {
 
     while ($pos !== FALSE)
 
     {
 
         $i = $i + 1;
 
         $tmp = substr($newfile,$pos+strlen($text));
 
         $newfile = substr($newfile,0,$pos) . $text1 . $tmp;
 
         if ($i >= $count) {break;}
 
         $pos = strpos($newfile,$text);
 
     }
 
   }
 
   return $newfile;
 
}
 
 
 
$file=file_get_contents ('./име_на_файл');
 
$n= 5 // (примерно число)
 
$new_file = str_replace_count('текст', 'текст1', $file, $n);
 
unlink('./име_на_файл');
 
$handle=fopen('име_на_файл','a');
 
fwrite($handle, $new_file);
 
fclose($handle);
 
?>