Php file\u put\u content()文件权限错误
在我的代码中,我发送url编码的图像,并使用文件内容将其转换为文件Php file\u put\u content()文件权限错误,php,file-upload,file-permissions,Php,File Upload,File Permissions,在我的代码中,我发送url编码的图像,并使用文件内容将其转换为文件 if(file_put_contents($arg['org_file'],$decodeData)) { chmod($arg['org_file'],777); $arg = Model_Photo::_convert_png_to_jpg($arg); //reduce file \Fuel\Core\Image::load($arg['or
if(file_put_contents($arg['org_file'],$decodeData))
{
chmod($arg['org_file'],777);
$arg = Model_Photo::_convert_png_to_jpg($arg);
//reduce file
\Fuel\Core\Image::load($arg['org_file'])
->config('quality',80)
->resize($arg['width'])
->save($arg['org_file'],755);
当我的执行得到上面的代码时。带有Image::Load的部件出现此错误
Fuel\Core\PhpErrorException [ Warning ]:
getimagesize(/www/my.website.com/public/uploads/2013-11-18/4511582301f8b92b08aad0b8e.jpg): failed to open stream: Permission denied
您可以看到,我将创建的文件chmod为777,但是查看控制台,权限不是777
--wxrw--wt 1 apache apache 291301 Nov 18 18:07 4511582301f8b92b08aad0b8e.jpg
由于没有读操作,我在处理文件时遇到了问题。我做了chmod,但它不起作用,所以我想我遗漏了一些东西。请帮忙,谢谢 嗯,just
777
与*nix使用的八进制表示法不同。您需要添加0
前缀以指示数字是八进制的
chmod($arg['org_file'], 0777);
更新
调用->save()
:
举例说明:
777=1100001001(01411)
0777 = 111111111
好吧,只是777
与*nix使用的八进制表示不同。您需要添加0
前缀以指示数字是八进制的
chmod($arg['org_file'], 0777);
更新
调用->save()
:
举例说明:
777=1100001001(01411)
0777 = 111111111
Trychmod($arg['org\u file'],0777)代码>尝试chmod($arg['org\u file'],0777)代码>对不起,它正在工作,然后我重新确认它是我本地的项目副本。无论如何,它不起作用。错误中未显示任何更改->保存($arg['org\u file'],755)是罪魁祸首。把它改成0777,它就工作了。我会改变一些事情。谢谢。@MrA我不知道->save()
的最后一个参数也是一个权限。。。我很高兴我的回答对这两个方面都有效:)对不起,它是有效的,然后我重新意识到它是我本地的项目副本。无论如何,它不起作用。错误中未显示任何更改->保存($arg['org\u file'],755)是罪魁祸首。把它改成0777,它就工作了。我会改变一些事情。谢谢。@MrA我不知道->save()
的最后一个参数也是一个权限。。。不过,我很高兴我的回答对双方都有效:)