使用PHP上传和显示多张图片可以通过以下步骤实现:
<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="images[]" multiple>
<input type="submit" value="上传">
</form>
$_FILES
超全局变量来访问上传的文件。以下是一个处理上传图片的示例代码:<?php
// 检查是否有文件上传
if(isset($_FILES['images'])){
$errors = array();
$uploadedFiles = array();
$extension = array("jpeg","jpg","png","gif");
// 获取上传的文件名和临时文件路径
foreach($_FILES['images']['tmp_name'] as $key => $tmp_name ){
$file_name = $_FILES['images']['name'][$key];
$file_tmp = $_FILES['images']['tmp_name'][$key];
// 检查文件扩展名
$ext = pathinfo($file_name, PATHINFO_EXTENSION);
if(in_array($ext,$extension)){
// 生成唯一的文件名
$newFileName = uniqid().'.'.$ext;
$uploadPath = "uploads/".$newFileName;
// 将文件移动到指定目录
if(move_uploaded_file($file_tmp,$uploadPath)){
$uploadedFiles[] = $uploadPath;
}
else{
$errors[] = "上传文件失败";
}
}
else{
$errors[] = "不支持的文件类型";
}
}
// 显示上传结果
if($errors){
foreach($errors as $error){
echo $error."<br>";
}
}
if($uploadedFiles){
foreach($uploadedFiles as $fileName){
echo "上传成功: <a href='$fileName'>$fileName</a><br>";
}
}
}
?>
scandir
函数获取上传目录中的所有文件,并使用循环遍历并显示这些图片。以下是一个显示已上传图片的示例代码:<?php
$uploadPath = "uploads/";
$files = scandir($uploadPath);
foreach($files as $file){
if($file !== '.' && $file !== '..'){
echo "<img src='$uploadPath$file' alt='图片'><br>";
}
}
?>
请注意,上述示例代码中的上传目录为"uploads/",你需要确保该目录存在并具有适当的写入权限。
这是一个简单的PHP上传和显示多张图片的示例。你可以根据自己的需求进行修改和扩展。
领取专属 10元无门槛券
手把手带您无忧上云