【发布时间】:2013-03-09 06:58:58
【问题描述】:
我目前正在借助 phonegap 编写移动应用程序。我希望这个应用程序具有的少数功能之一是能够捕获图像并将其上传到远程服务器......
我目前的图像捕获和上传/发送电子邮件部分可以使用已编译的 apk 正常工作...但在我的 php 中,我目前将图像命名为“图像 [插入从 10 到 20 的随机数]...问题这里是数字可以重复并且图像可以被覆盖......我已经阅读并考虑过只使用rand()并从0到getrandmax()中选择一个随机数,但我觉得我可能有同样的机会文件覆盖...我需要每次都以唯一的名称将图像上传到服务器,无论如何...所以 php 脚本将检查服务器已有的内容并写入/上传图像具有唯一的名称...
除了“rand()”还有什么想法吗?
我也在考虑可能为每张图片命名...img + 日期 + 时间 + 随机 5 个字符,其中包括字母和数字...所以如果一张图片是在 3 月凌晨 4:37 使用应用程序拍摄的2013 年 2 月 20 日,当上传到服务器时,图像将被命名为“img_03-20-13_4-37am_e4r29.jpg”......我认为这可能有效......(除非有更好的方法)但我相当新到 php 并且不明白如何写这样的东西......
我的php如下...
print_r($_FILES);
$new_image_name = "image".rand(10, 20).".jpg";
move_uploaded_file($_FILES["file"]["tmp_name"], "/home/virtual/domain.com/public_html/upload/".$new_image_name);
感谢任何帮助... 提前致谢! 另外,如果有任何进一步的信息我可能会遗漏,请告诉我......
【问题讨论】:
-
$new_image_name = "image".microtime().".jpg";应该足以满足您的需要,如果 2 张图像没有同时处理(秒的几分之一)。
标签: php cordova upload unique filenames