我在PHP中有一个Class函数( GetMenuItems.php ),它连接到数据库并获取菜单项。此功能是从 Menu.php 和 MenuAdmin.php 文件中调用的。
问题是,它适用于 Menu.php ,而不是 MenuAdmin.php 。
文件夹结构:
连接:
$db = new PDO('sqlite:FundosDB.db');
如果我将连接更改为:$db = new PDO('sqlite:..\FundosDB.db');
,则会发生相反的情况。
如何让它适用于这两种情况?并且,相对路径不应该在进行连接的类文件和DB文件之间,而不是在调用类中的函数的文件和DB文件之间?我很困惑。
答案 0 :(得分:1)
使用$_SERVER['DOCUMENT_ROOT']
的绝对路径设置db文件的路径,如:
define('DB_PATH', $_SERVER['DOCUMENT_ROOT'] . '/FundosDB.db');
然后到处使用它:
$db = new PDO('sqlite:' . DB_PATH);