apache — PHP File переименовывает сам

Я пытаюсь написать скрипт обновления для одного из наших сайтов. В настоящее время скрипт разархивирует файлы, предоставленные по ссылке обновления, и разархивирует в каталог.

Моя проблема, если есть новая версия себя, т.е. upgrader-new.php Мне нужно, чтобы скрипт завершился, а затем удалил сам, затемupgrader-new.php быть переименован в upgrader.php,

Единственное решение, которое я могу придумать, — это создать третий файл, т.е. upgrade-assist.php который будет запущен перед любым обновлением, чтобы проверить, upgrader-new.php существует, и если это так, удалите оригинал и переименуйте новый в правильное имя. Я предвижу проблемы, потому что оригинальный сценарий все равно придется вызывать upgrader-assist.php и насколько я знаю, вы не можете удалить работающий скрипт?

Какие-либо предложения?

Спасибо!

2

Решение

насколько я знаю, вы не можете удалить работающий скрипт?

Вы можете попробовать это:

<?php unlink(__FILE__);

Это прекрасно, если нет других процессов, использующих этот файл (и, конечно, запущенный процесс имеет достаточно прав для этого).

Файл не обрабатывается и выполняется построчно, но загружается в память, поэтому вы можете свободно переименовывать или удалять его, и он все равно будет работать до конца (или фатальная ошибка).

4

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]