Для всех вас, кто спрашивает, зачем вам это нужно, у меня есть идея, которая очень похожа.Моя идея состоит в том, чтобы попытаться переименовать целый класс PHP на лету.В моем случае он будет использоваться для бота IRC-чата, в котором я буду загружать и создавать плагины на лету, так что мне не нужно будет перезагружать бота, и время безотказной работы будет очень долгим.Это будет включать переименование предварительно загруженных классов с тем же именем, что и класс, который я пытаюсь загрузить, чтобы не было конфликта и он работал бы правильно.
Например:
У меня $bot
работает на irc.example.com
У меня установлен и работает плагин test.php, теперь, когда он загружен в память, я могу изменить файл test.php без каких-либо изменений на $bot
Итак, я обновляю test.php
Теперь я хочу, чтобы он загрузился в $bot
, но $bot
уже имеет тестовую загрузку, и он будет конфликтовать, еслиЯ попытался включить test.php снова
, поэтому вместо этого мы запускаем функцию переименования, чтобы переименовать класс test в class test [sha1 счетчика]
, а затем мы включаем 'test.php'
$bot->test = new test();
и вот он, обновленный тестовый плагин, установленный и загруженный в память на $bot
без перезагрузки.
Это все теория, но об этом нужно подумать раньшемгновенно разжигая кого-то за свои идеи с помощью «Почемутебе даже нужно такое "отношение".
Я имею в виду, давайте будем честными здесь.Каковы шансы, что вы супер гений, который знает все, что нужно знать о программировании, и знает, что всем будет или не нужно?