引言
图片上传
1. 准备工作
在开始编写代码之前,我们需要做好以下准备工作:
- 确保你的服务器支持PHP。
- 创建一个用于存放上传图片的文件夹,并设置相应的权限。
- 准备一个HTML表单,用于上传图片。
2. PHP代码实现
<?php
// 设置上传目录
$upload_dir = "uploads/";
// 获取上传文件的信息
$file_name = $_FILES['file']['name'];
$file_tmp_name = $_FILES['file']['tmp_name'];
$file_size = $_FILES['file']['size'];
$file_error = $_FILES['file']['error'];
// 检查文件类型
$file_ext = strtolower(pathinfo($file_name, PATHINFO_EXTENSION));
$allowed_extensions = array("jpg", "jpeg", "png", "gif");
// 检查文件大小
$max_size = 5000000; // 5MB
// 生成唯一的文件名
$unique_file_name = uniqid() . "." . $file_ext;
// 移动文件到上传目录
if (in_array($file_ext, $allowed_extensions) && $file_size <= $max_size && $file_error == 0) {
move_uploaded_file($file_tmp_name, $upload_dir . $unique_file_name);
echo "文件上传成功!";
} else {
echo "文件上传失败!";
}
?>
3. HTML表单
<form action="upload.php" method="post" enctype="multipart/form-data">
<label for="file">选择图片:</label>
<input type="file" name="file" id="file">
<input type="submit" value="上传">
</form>
图片展示
1. 创建展示页面
<!DOCTYPE html>
<html>
<head>
<title>图片展示</title>
</head>
<body>
<h1>上传的图片:</h1>
<div>
<?php
$upload_dir = "uploads/";
$files = scandir($upload_dir);
foreach ($files as $file) {
if ($file != "." && $file != "..") {
echo "<img src='" . $upload_dir . $file . "' alt='" . $file . "' width='200' height='200'>";
}
}
?>
</div>
</body>
</html>