Резултати от 1 до 2 от общо 2

Редактиране на файл чрез PHP

Сподели във Facebook Сподели в Twitter Изпрати на Email Сподели в LinkedIn
  1. Member
    Тук е от
    Jan 2002
    Мнения
    227
    #1

    Редактиране на файл чрез 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 заместване (или колкото му кажа аз) и да престане.

    Предварително благодаря.

  2.  
     
  3. Senior Member
    Тук е от
    Aug 2003
    Мнения
    1,233
    #2

    Редактиране на файл чрез 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);
    ?>

Сподели във Facebook Сподели в Google Plus Сподели в Twitter Изпрати на Email Сподели в LinkedIn

Подобни теми

  1. Отговори: 2
    Последно: 20-01-07, 02:34
  2. Отговори: 9
    Последно: 30-12-06, 23:30
  3. Редактиране на ДВД
    От topche във форум Blu-ray и DVD плейъри и рекордери
    Отговори: 3
    Последно: 12-11-06, 10:04
  4. Редактиране на PDF файлове?
    От bucho във форум Общ - софтуер
    Отговори: 1
    Последно: 28-06-05, 17:27

SetCombG.com
SetCombG.com е портален сайт и Форум за битова техника, телевизори, климатици, лаптопи и смартфони, създаден през 1999 година.
Заедно сме над 20 години!
Следвай ни
Горе