在php上传之前验证图像

时间:2010-09-18 01:58:05

标签: php

我正在使用复制功能在php上传图像。当图像高度小于981pz&时,我的imade不会显示。宽度小于477pz

4 个答案:

答案 0 :(得分:1)

图像大小验证器通常放在php代码/服务器端。

用户上传文件后,您可以使用

检查图像的大小
list($width, $height) = getimagesize($img_path)

if ($width > x )
    do something

if ($height > x)
    do something

如果要检查文件类型以及用户上传的图像分辨率,可以使用

$info = getimagesize("my-great-photo.jpg");

and the result is:
Array
(
    [0] => 300 //width
    [1] => 200 //height
    [2] => 2
    [3] => width="300" height="200"
    [bits] => 8 //size
    [channels] => 3
    [mime] => image/jpeg //image type
)

$width = $info[0];
$height = $info[1];
$type = $info[mime]

check this documentation

答案 1 :(得分:0)

你的问题不是很清楚。但是,如果您正在寻找PHP中的方法来查找图像的高度和宽度,您可以使用getimagesize函数。

您可以将其用作:

list($width,$height) = getimagesize($image_file_name);

答案 2 :(得分:0)

并非所有主机都支持使用复制功能,这被视为存在安全风险。如果您想将图片上传到服务器,请查看创建HTML表单,例如已完成的here。如果这样做,您将能够从$ _FILES数组中获取mime类型,并且不仅知道您是否正在上传图片,还知道您上传的图片类型(例如png,jpeg,gif)

答案 3 :(得分:0)

如果您正在寻找限制上传图片尺寸的方法,那么正如其他人所说,您可以使用getimagesize功能,但如果显示图片时出现问题,您可以使用像{{{}这样的脚本3}},您将图像路径传递给它,它会将其大小调整为您指定的尺寸(在飞行中)。