在php中执行“必需”代码

时间:2009-08-27 10:14:39

标签: php

我有一些文件:

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 个答案:

答案 0 :(得分:3)

设置变量和要求文件的顺序很重要。这将有效:

require_once 'logger.php';
$Logger = new Logger();
require_once 'smth_else.php';
$Else = new Smth_else();

答案 1 :(得分:2)

'smth_else.php'中的

代码在包含时执行,即require_once。在那个阶段,您没有定义$Logger

答案 2 :(得分:1)

您必须在包含smth_else.php之前定义$ logger 。 考虑一下包含,就像你将它粘贴到包含的上下文中一样。