php file_put_contents功能不起作用

ste*_*eve 30 php file-upload file

为什么file_put_contents拒绝为以下代码工作?

$f = file_put_contents("files/r.js", "Some text here");

if ($f) print 1;
else print 0;
Run Code Online (Sandbox Code Playgroud)

Fam*_*ags 46

这可能是一个许可问题

该目录是否已/files编译为777?有时,如果没有足够的权限,php将不允许您访问目录.我不知道空白错误.

尝试查看它是否有足够的权限,如果没有,然后将其设置为777并尝试.

  • 这是一个糟糕的答案和一个坏主意:http://stackoverflow.com/questions/2338641/in-a-php-apache-linux-context-why-exactly-is-chmod-777-dangerous (14认同)
  • 换句话说,你给予任何人足够的许可来写东西。。 (2认同)
  • @joemurphy如果您在生产环境中进行测试,然后在其可以正常工作的情况下将777留在那儿,那不是一个好主意,而不是将测试仅仅视为旨在显示或消除许可问题的可能性,以此作为前进的一步。我认为答案应该已经清楚了。 (2认同)

jmo*_*253 5

您正在使用文件系统上的完整路径还是尝试使用 URI?我认为这个 PHP 函数希望您提供在文件系统上找到文件时的路径。

不过相对路径应该没问题。

您可能需要确保该文件存在并且其权限设置为 777。有时我发现仅将目录权限设置为 777 是不够的,但该文件还必须已经存在。

  • 这不是猜测。这是我的专业经验。我遇到过这样的情况:除非该文件存在,否则我无法写入该文件。你从哪里得到的“猜测”???你甚至读过问题和答案吗? (4认同)
  • 这是一个糟糕的答案和一个坏主意:http://stackoverflow.com/questions/2338641/in-a-php-apache-linux-context-why-exactly-is-chmod-777-dangerous (2认同)