Выполнение «необходимого» кода в php - PullRequest
0 голосов
/ 27 августа 2009

У меня есть несколько файлов:

core.php

require_once 'logger.php';
require_once 'smth_else.php';

$Logger = new Logger();
$Else = new Smth_else();

smth_else.php

...
$Logger->write(...);
...

И получите:

Примечание: неопределенная переменная: вход в систему smth_else.php ...

Ответы [ 3 ]

3 голосов
/ 27 августа 2009

Порядок установки переменных и требования ваших файлов имеет значение. Это будет работать:

require_once 'logger.php';
$Logger = new Logger();
require_once 'smth_else.php';
$Else = new Smth_else();
2 голосов
/ 27 августа 2009
Код

в 'smth_else.php' выполняется при включении, то есть в require_once. На этом этапе вы не определили $Logger.

1 голос
/ 27 августа 2009

Вы должны определить $ logger до включения smth_else.php. Думайте о включении, как если бы вы вставляли его в контекст включения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...