【发布时间】:2016-01-05 05:22:39
【问题描述】:
我尝试使用以下代码通过 file_put_contents(转换为 .jpg 的 base64 字符串)将一些内容上传到我的 ubuntu 服务器:
file_put_contents($filename, base64_decode(preg_replace('#^data:image/\w+;base64,#i', '', $data)));
是的,所有参数都是正确的,我仔细检查了它们。我想知道为什么它不起作用:
顺便说一句:我尝试将其上传到一个文件夹,该文件夹比该文件夹高一级,该文件夹可通过 url 访问(但即使将其直接放在 Internet 文件夹中,它也不起作用)。
我想过权限不好,但即使将权限更改为 777(我知道这很不安全),它也不起作用。
我也没有在控制台中收到任何错误。
有人知道为什么这不起作用吗?
谢谢。
【问题讨论】:
-
什么是
$filename? -
$filename = "../userImgs/img1" -
error_reporting(E_ALL); ini_set('display_errors', '1'); -
@AbraCadaver 你的意思是,把那个代码放在我的
file_put_contents();下?如果是,那么这也不会显示任何错误。如果没有,我应该把它放在哪里? -
/var/www/html/test.php这是正确的路径吗?并且您仔细检查了www-data(apache 用户)是否可以在那里写信?
标签: php ubuntu file-put-contents