2017-06-05 129 views
0

我想写到我的本地服务器上的文件,我找不到为什么,我还没有找到任何好的理由,为什么我在做什么不应该工作。PHP写入服务器上的文件

什么,我tryed:

file_put_contents("./lol.txt", "Contents"); 
file_put_contents($_SERVER['DOCUMENT_ROOT'] . "/lil.txt", "Contents"); 
file_put_contents($_SERVER['DOCUMENT_ROOT'] . "lal.txt", "Contents"); 
file_put_contents("lel.txt", "Contents"); 

如果需要的话,我会提供任何额外的信息。

+0

你得到了什么错误? –

+0

首先,您应该转储“$ _SERVER ['DOCUMENT_ROOT']。”/lil.txt“”路径并确保该文件不存在。接下来,我建议检查你的php日志文件以获取更多细节。你有文件系统权限写文件到该文件夹​​? – VirCom

+0

file_put_contents()返回false并且没有输出到控制台soo我搜索了一下并使用了error_get_last()['message']并且它返回了“...未能打开流:Permission denied”,这是我在其他堆栈的答案中找到的到类似的问题(例如:只是改变somefile.txt权限),但直到现在我不应该改变整个目录权限(chmod +777 dirname),反正这对我来说是什么,谢谢你@AmitGaud,我不认为要检查更多的错误。 –

回答

1

使用的realpath - 返回规范化的绝对​​路径名

file_put_contents(真实路径( “somedirectory/somefile.txt”),$内容);

并检查是否有写入 访问权限的文件夹和文件。

+0

正如我在上面的评论中所说的,的确是一个许可问题,谢谢! –

相关问题