我有一个文件(file.php(,它require_once
一个初始化所有对象(init.php的文件(。此文件(file.php(与init.php位于同一文件夹中。他们之间的沟通还可以。但是我有一个文件(file2.php(,它require_once
init.php它不在同一个文件夹中(../../file2.php(。require_once正常,但是当我尝试调用方法$db->select(...)
时,出现错误:
`Call to a member function execute() on boolean in.
但是当我在文件中放置相同的代码时.php一切都很顺利。
初始化.php
<?php
require_once 'class/Database.php';
require_once 'class/UserRegister.php';
require_once 'class/Utility.php';
require_once 'class/AccountValidate.php';
$configs = include 'config.php';
$db = new Database($configs);
$db->Connect();
$utility = new Utility();
?>
文件2.php
<?php
require_once '../../php/init.php';
$db->select(array("*"),"users","username","=","test"); //not working ?>
在
file2.php
中使用require_once时,使用FILE的相对路径:
require_once(dirname(__FILE__)."/../../init.php");
如果你在init.php
中使用require_once((,你应该做同样的事情,例如,如果你在init的同一个目录中调用"database.php"include.php
...
require_once(dirname(__FILE__)."/database.php");
...