我正在使用Symfony2框架,我在doc文件夹中放置了2个pdf文件(在app和web文件夹旁边)
在我的控制器中我写了这个:
$path = $this->get('kernel')->getRootDir() . "/../doc/" . $filename . '.pdf';
我调试项目,我在变量$ path里面:
c:/wamp/www/myproject/app/../doc/myfile.pdf
将此路径放入Windows系统资源管理器中,我可以打开该文件。 (所以看起来很好)
但是在控制器内部,我在$ path上调用的函数返回null,例如mime_content_type()或basename(),如果我写了file_get_content($ path),则说该文件不存在。
有什么想法吗?
答案 0 :(得分:2)
$path = realpath($this->get('kernel')->getRootDir() . "/../doc/" . $filename . '.pdf');
http://php.net/manual/en/function.realpath.php
编辑:realpath还检查路径是否存在。因此它只能用于路径的现有部分。