这让我发疯了。我读了类似的线程,尝试过解决方案,但它对我没有用。我想我做错了。
文件夹&文件结构(方括号中的目录):ROOT index.php - > [php] - > db.php,ajaxhandler.php,[classes] - > class.player.php
托管数据库凭据的db.php位于[php]目录中 从客户端获取调用的ajaxhandler.php也在[php]目录中 class.player.php位于[classes]目录中,该目录是[php]目录的子目录。它的工作方式是ajaxhandler.php从客户端(index.php)获取AJAX调用,然后运行Player类的方法。此方法需要访问DB。
在ajaxhandler.php中我有require_once(dirname(__FILE__).'/db.php')
- 但我可以删除它,因为它根本不可能调用DB。
在classes.player.php中,我有require_once(dirname(_FILE_).'/../../php/db.php')
我也尝试使用__DIR__
(我的php版本是5.5)。
当我在浏览器中单独打开这些文件时,我没有显示任何路径错误。
如果我在DB类中将DB凭据指定为变量,那么这一切都有效,但我想通过require_once()来实现这一点。