Можно ли вызвать include / require из объекта класса для текущего файла? - PullRequest
0 голосов
/ 21 января 2011

Так вот моя идея.У меня есть класс, который принимает файл, проверяет определенный фрагмент, str_replaces его и возвращает его обратно.Вроде как упрощенный smarty работает с заменой тега

, например, если мой index.php выглядит следующим образом:

<?php
include('file.php');
....
?>

, он становится:

<?php
include($myClass->edit('file.php');
....
?>

Тоработает отлично.Но вместо этого, возможно ли заменить действительную функцию include () на мою собственную?

, сделав ее такой:

<?php
$myClass->myinclude('file.php');
....
?>

Функция myinclude () в моем классе будет:

public function myinclude ($file) { 
    include($this->edit('file.php'));
}

Но это не работает, я полагаю, потому что я не могу вызвать include из класса и ожидать, что он вернется обратно в вызывающий файл index.php.

Есть ли какая-то хитрость вокруг этого?

1 Ответ

0 голосов
/ 21 января 2011

include - это не функция, а языковая конструкция. Когда ваш php выполняется, содержимое включенного файла (или даже исполняемые строки php) копируется в момент включения.

...