php批量上传图片-使用PHP实现简单的图片上传

本文已参加“新人创作盛典”活动,一起开启鹈鹕创作之路。 1. HTML表单设计



 
  
  
  
  
  
  PHP图片上传
  
    .form-group {
            margin: 20px 0;
    }
  
 
 
    
        

需要注意的是,提交文件时,form表单与提交普通文本不同。 提交文件时,需要指定传值方式为POST,并在表单中添加一个enctype属性,其值为multipart/form-data,这样表单就会将文件内容Encode成HTML请求。

这里我们为action属性指定upload.php的值,即提交文件到upload.php。

2. PHP处理上传的文件

第一步是接收文件。

$file = $_FILES['image'];

与使用$_GET或$_POST接收普通文本不同,需要使用$_FILES接收文件,其中image对应表单输入组件中name属性的值。

打印接收到的文件php批量上传图片,可以看到以下信息:

批量上传图片插件_批量上传图片怎么传_php批量上传图片

Array
(
    [name] => 1.png // 原文件名
    [type] => image/png // 文件类型
    [tmp_name] => C:Windowsphp4DA9.tmp // 临时文件位置
    [error] => 0 // 是否有错误,0为正常,具体错误取决于你的PHP配置文件是否限制了文件上传的信息
    [size] => 60814 // 文件大小,单位 kb
)

第二步是取出文件扩展名。

$ext = strrchr($file['name'], '.');

使用 strrchr 函数测量最后一次出现 的位置。 并返回该位置剩余的所有字符。

输出结果:

.png

第三步是重命名文件。

$newName = mt_rand(0000, 9999).time().$ext;

批量上传图片怎么传_php批量上传图片_批量上传图片插件

使用mt_rand函数随机生成0000-9999之间的四位数字,然后加入当前时间戳作为新文件名。

输出结果:

77231619271980.png

第四步,将新命名的文件链接到指定的文件夹中保存。

假设文件保存到uploads/images目录下,则保存路径和文件名拼接成完整路径。

$path = 'uploads/images/'.$newName;
$info = move_uploaded_file($file['tmp_name'], $path);

使用PHP的move_uploaded_file函数将文件连接到指定位置。 该函数需要两个参数。 第一个参数是原始文件的临时位置,第二个参数是指定的保存位置。

第一步已经获取了原文件的临时位置php批量上传图片,并且已经获取了要保存的位置。 此时可以直接查看保存的结果。

print_r($info);

如果返回1,则表示保存成功,其他值表示保存失败。