Задать вопрос
@aspirantes

Возможно ли закрыть файл, открытый через include?

Данные подгруженные "include". По сути:

1. Добавляем функцию "test()" через include.

2. Выполняем "test()".

3. Фиксируем результат.

4. Больше нам функция не пригодится, но демон продолжит работать.

5. Вопрос: Умеет ли PHP стирать данные инклюдного файла?

Например присвоим файлу namespace myTest
class myTest;
private static function test();

В основном файле при использовании (только при использовании класса) подгружается файл myTest.
use myTest;
myTest::test()


Хотелось бы видеть что-то вроде:

unlink(myTest);

То есть подтирать не кэшированный класс, а сам "namespace myTest" файл вырезать из скрипта.
  • Вопрос задан
  • 206 просмотров
Подписаться 1 Простой 14 комментариев
Решения вопроса 1
delphinpro
@delphinpro Куратор тега PHP
frontend developer
Невозможно закрыть файлы "открытый" функцией (конструкцией) include, потому что эта функция не открывает файл.

Если речь идет о потребляемой памяти, то непосредственно исполняемый код память-то и не жрет особо. Основное потребление - это данные. Чтобы очистить память, используйте функцию unset для переменных.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
index0h
@index0h
PHP, Golang. https://github.com/index0h
Угу, за счёт его не открывания. В случае, если вы не изменяли файл и не отключали opcache, ваш файл будет читаться один раз, потом браться из кэша.
Ответ написан
Комментировать
@Mylistryx
Ок, так важен именно include? ООП?
$a = new ClassA();
$result = $a->test();
unset($a);

Поюзали, выгрузили. "Завершенность" в Вашем понимании как есть.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы