简介
图片流读取
1. 打开文件目录
$dir = opendir("./images");
2. 读取文件列表
接着,使用 readdir() 函数遍历目录中的所有文件:
while (($file = readdir($dir)) !== false) {
// 处理文件
}
3. 过滤图片文件
$allowedExtensions = array('jpg', 'jpeg', 'png', 'gif');
if (in_array(pathinfo($file, PATHINFO_EXTENSION), $allowedExtensions)) {
// 处理图片文件
}
4. 关闭目录
处理完文件后,不要忘记关闭目录:
closedir($dir);
图片流处理
1. 创建图片资源
list($width, $height, $type, $attr) = getimagesize($file);
switch ($type) {
case IMAGETYPE_JPEG:
$image = imagecreatefromjpeg($file);
break;
case IMAGETYPE_PNG:
$image = imagecreatefrompng($file);
break;
case IMAGETYPE_GIF:
$image = imagecreatefromgif($file);
break;
}
2. 图片处理
$newWidth = 200;
$newHeight = 200;
resizeImage($image, $newWidth, $newHeight);
3. 保存图片
imagejpeg($image, 'new_image.jpg');
图片流保存到数据库
// 创建数据库连接
$conn = new mysqli('localhost', 'username', 'password', 'database');
// 准备SQL语句
$sql = "INSERT INTO images (image) VALUES (?)";
// 创建预处理语句
$stmt = $conn->prepare($sql);
// 绑定参数并执行
$stmt->bind_param('b', $imageData);
$stmt->execute();