我为一个项目编写了一个微小的MVC框架。我正在使用Twig作为模板引擎,但我无法验证视图是否存在。
这是一个来自文件的片段,其中Controller类是在...中定义的。
protected function renderView($viewFile, $viewData = [])
{
if (file_exists($this->appPath . "views/$viewFile"))
{
echo $this->twig->render($viewFile, $viewData);
}
else
return false;
}
问题是检查视图是否存在的file_exists()
调用无法正常工作。构造控制器时定义appPath
属性。它是相对于实例化控制器的文件的路径。
index.php
文件位于框架的根目录中。有init.php
加载所有核心类,如Controller
类。 init.php
需要index.php
。 init.php
需要一些配置文件,自动加载器和核心类(如Controller
)。
我已经使用getcwd()
确认调用此方法时当前的工作目录是正确的。我也回应了该方法试图检查的路径。我向file_exists
提供的路径确实是当前工作目录的正确相对路径。
这里有什么问题?