我有一个文件( 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.
但是当我在file.php中输入相同的代码时,一切正常。
的init.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();
?>
file2.php
<?php
require_once '../../php/init.php';
$db->select(array("*"),"users","username","=","test"); //not working ?>
答案 0 :(得分:0)
在file2.php
中使用require_once时,使用文件的相对路径:
require_once(dirname(__FILE__)."/../../init.php");
如果你在init.php
中使用require_once(),你应该这样做,例如,如果你将calla“database.php”包含在init.php的同一目录中
...
require_once(dirname(__FILE__)."/database.php");
...