我刚刚安装了Twig作为我自己的MVC框架的一部分。在设置加载程序时,我遇到了识别目录路径的问题。我厌倦了以下三个版本:
$twigLoader = new Twig_Loader_Filesystem('../views/user');
$twigLoader = new Twig_Loader_Filesystem('http://AmColAn.loc/research/views/user');
$twigLoader = new Twig_Loader_Filesystem('/Volumes/Data RAID/htdocs/AmColAn/research/views/user');
前两个错误导致无法找到目录,而第三个工作正常。显然,我无法在我的生产服务器(godaddy)上执行此操作。我怀疑我做的事情很简单。它在OS X 10.8.2上的XAMPP上运行。 twig目录位于代码中显示的研究目录中。代码位于研究/课程的文件中。
我还在研究目录中添加了一个.htaccess文件。它包含:
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^([a-zA-Z]*)/?([a-zA-Z]*)?/?([a-zA-Z0-9]*)?/?$ index.php?controller=$1&action=$2&id=$3 [NC,L]
这可能是问题吗?我可以在版本2中看到它。
更新:我尝试了以下内容:
$twigLoader = new Twig_Loader_Filesystem('views/user');
这也有效。似乎文件或目录引用的起点是研究。我总是不得不在我所有其他PHP代码中使用../s回到基本目录。这种情况的唯一区别是存在.htaccess文件。我想知道它是否对行为和原因负责。