我已经浏览过有关此主题的网站,但我仍然感到困惑。我已经解决了我的问题,但我内心深处知道我有点被骗了,这是一个可能导致我进一步出现问题的修复程序。让我解释一下我在哪里:
这是一个像这样的目录结构文件夹>> [文件夹名称]:
/site root
[ajax-loads]
showorder.php
[bcls] << For bespoke classes
class.order.php
[cls] << For classes
class.main.php
class.db.php
class.sql.php
...
...
dashboard.php
index.php
config.php
...
.. etc etc
所以上面我展示了我有 2 个文件夹,其中包含供我使用的类,其中大多数是通过 class.main.php 中的 __autoload 调用的。我遇到的问题是当我使用 jQuery 将新内容“加载()”到 div 中时;行为发生变化,自动加载的路径是相对于 ajax-load 文件而不是相对于 class.main.php。目前我有以下代码,我觉得可以这么说是被骗了。
//PATHS & AUTOLOAD
set_include_path("./cls");
set_include_path("../cls");
set_include_path("./bcls");
set_include_path("../bcls");
//INVESTIGATE THIS NONESENSE ABOVE!
function __autoload($class_name)
{
require_once 'class' . '.' . $class_name . '.' . 'php';
}
在文件的前面,我的 config.php 文件遇到了同样的问题,我已经修复了临时文件:
set_include_path("./");
set_include_path("../");
现在让我指出这是我决定摆脱程序编码的第一个大项目,这是我第一次真正体验自动加载。我真的需要更好地理解这一点,而不是成为复制粘贴编码器;我在这里的理解中遇到了一个空白。除了更正代码之外,有人会解释正确的代码在做什么,因为我尝试了一些“解决方案”,但在模仿其他人的例子后我仍然得到奇怪的结果。
爱和亲吻安迪