2016-11-10 5 views
0

Привет всем,Найти и заменить текст во всех файлах с помощью PHP

У меня есть список PHP файлов в моем project.If я хочу, чтобы заменить index.php текст home.php и сохранить его. Он изменится во всем моем PHP-файле в каталоге. Как я могу это кодировать.

Я могу найти и заменить в одном файле, но я не знаю, как искать в целом каталоге и заменить. Пожалуйста, помогите мне узнать путь. Я новичок в этом разделе. Спасибо заранее.

+0

вы можете сделать это с помощью любого редактора «Искать в проектах» – Bik

+0

Вы используете какой-либо IDE? Он может иметь функцию Replace, которая работает с несколькими файлами. – Barmar

+0

Я знаю, что.Я хочу сделать это через PHP-код без использования инструментов IDE. –

ответ

1

Вы можете использовать glob, чтобы получить все файлы в каталоге, glob(__DIR__.'/*.php') даст вам все PHP файлы в текущем каталоге. Но если вам нужно сделать это на производственном сервере, используйте его только в том случае, если вы можете запустить его как функцию командной строки, поскольку веб-сервер не должен иметь доступ на запись к файлам.

0

Функция scandir() может быть функцией, которую вы ищете.

Возвращает массив файлов и каталогов из каталога. (Php.net)

0

Если вы запустите PHP на Linux. Самый быстрый способ заменить содержимое файла - использовать команду sed.

найти PATH -тип f -exec sed -i -e 's/index.php/home.php/g' {} \;

код PHP:

exec("find . -type f -exec sed -i -e 's/index.php/home.php/g' {} \;");