我正在尝试从控制器保存文件。它使用fopen
无效,我无法收到错误消息。有没有办法做到这一点或绝对需要使用文件系统包?有没有办法了解错误?我使用了try / catch博客而没有运气。我正在使用的代码非常简单:
$file = $this->get('request')->server->get('DOCUMENT_ROOT').'/myfile.txt';
$fp = fopen($file, 'w');
fwrite($fp, 'file content');
fclose($fp);
答案 0 :(得分:0)
有很多方法可以做到这一点。我经常使用__DIR__
来获取实际的文件夹。
$fp = fopen(__DIR__.'/myfile.txt');
如果文件位于同一文件夹中,则更容易。如果您有较旧的PHP版本,则必须使用dirname(__FILE__)
。或者在Symfony2中,您可以使用一些函数来获取目录。像这样:
$path = $this->get('kernel')->getRootDir() . '/../web';