5

我已经看过这个StackOverflow 问题,但没有帮助(类似标题)。

我正在从我的 Android 应用程序中传递一个图像。如果我输入

$file = fopen('test.jpg', 'wb');

它工作正常并且图像上传;但是,我想允许从 android 手机多次上传,所以我想随机化 .jpg 文件的名称,以便我可以将每个新上传保存为不同的名称。我在下面尝试这个:

$destination =  time() + rand(1, 1000) . ".jpg";
$url_destination = "/project_images/" . $destination;

$file = fopen($url_destination, 'wb');
fwrite($file, $binary);
fclose($file);

但是,它不会将文件写入服务器。我在那里尝试了 URL 的不同变体 - 使用“project_images/”、“/project_images/”,甚至尝试了完整的 URL(前面提到的 StackOverflow 帖子纠正了我),但我仍然无法编写它。

project_images 文件夹的权限设置为允许将文件写入其中。有任何想法吗?

4

2 回答 2

8

你的问题是"/project_images"这是一个错误的绝对路径。

为了让它工作,将其更改为"project_images/"or dirname(__FILE__).'/project_images/'

于 2012-12-07T10:08:09.147 回答
1

对于那些在 Windows 上使用 XAMPP 的人:DIRECTORY_SEPARATOR改用/

dirname(__FILE__).DIRECTORY_SEPARATOR.'project_images'.DIRECTORY_SEPARATOR
于 2019-06-13T06:27:29.690 回答