За последние 24 часа нас посетили 17892 программиста и 1719 роботов. Сейчас ищут 953 программиста ...

Замена строки в файле

Тема в разделе "PHP для новичков", создана пользователем MCTrane, 23 апр 2010.

  1. MCTrane

    MCTrane Активный пользователь

    С нами с:
    14 ноя 2009
    Сообщения:
    217
    Симпатии:
    0
    Подскажите с помощь какой функции можно заменить определённую строку в файле, в интернете нашёл код, но когда его применил мой файл очистился.....
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    файл большой?

    могу сказать, что работа с базами данных, тем более для маленьких вещей - очень простая штука. если че - научу =)
     
  3. lexa

    lexa Активный пользователь

    С нами с:
    22 июл 2007
    Сообщения:
    1.746
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    MCTrane, найди в интернете документацию по PHP, помогает, да.

    Читаешь файл.
    http://php.net/str_replace
    Сохраняешь файл.
     
  4. MCTrane

    MCTrane Активный пользователь

    С нами с:
    14 ноя 2009
    Сообщения:
    217
    Симпатии:
    0
    Да я умею работать с бд, просто движок один изменить надо, а там с файлами работают...
    lexa
    Дело в том что она английская, и к тому же я даже незнаю что мне искать....

    Я уже по другому сделал...
     
  5. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    и как сделал?

    если файл небольшой, его можно тупо читать целиком в переменную и мучать ее до посинения, потом сбрасывать в новый файл, и в случае успеха - стирать первый и переименовывать второй.
     
  6. magnat_8

    magnat_8 Активный пользователь

    С нами с:
    23 апр 2010
    Сообщения:
    7
    Симпатии:
    0
    preg_replace — Выполняет поиск и замену по регулярному выражению
     
  7. lexa

    lexa Активный пользователь

    С нами с:
    22 июл 2007
    Сообщения:
    1.746
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    MCTrane, английская, да. Хреного, если английский не знаешь. Но там ведь есть примеры.

    Искать в нём можно так:
    1. что нам надо? Заменять строки.
    2. Строки по-английски - strings.
    3. Набираем http://php.net/strings.

    PHPшные доки очень удобные.
     
  8. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    magnat_8
    это если файл не большой. а если большой, то это муть какая-то будет. Работать будет конечно, но что при этом будет твориться с файлами и с диском...
     
  9. magnat_8

    magnat_8 Активный пользователь

    С нами с:
    23 апр 2010
    Сообщения:
    7
    Симпатии:
    0
    Согласен с igordata.
    использовать str_replace() для замены определённой строку в файле



    str_replace — Заменяет строку поиска на строку замены

    Пример #1 Примеры использования str_replace()
    PHP:
    1.  
    2. <?php
    3. // присваивает <body text='black'>
    4. $bodytag = str_replace("%body%", "black", "<body text='%body%'>");
    5.  
    6. // присваивает: Hll Wrld f PHP
    7. $vowels = array("a", "e", "i", "o", "u", "A", "E", "I", "O", "U");
    8. $onlyconsonants = str_replace($vowels, "", "Hello World of PHP");
    9.  
    10. // присваивает: You should eat pizza, beer, and ice cream every day
    11. $phrase  = "You should eat fruits, vegetables, and fiber every day.";
    12. $healthy = array("fruits", "vegetables", "fiber");
    13. $yummy   = array("pizza", "beer", "ice cream");
    14.  
    15. $newphrase = str_replace($healthy, $yummy, $phrase);
    16.  
    17. // начиная с версии 5.0.0 доступен аргумент count
    18. $str = str_replace("ll", "", "good golly miss molly!", $count);
    19. echo $count; // 2
    20. ?>