繁体   English   中英

在上传php之前先验证图像

[英]validate an image before uploading in php

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

图像大小验证器通常放在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]

查看此文档

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

您可以将其用作:

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

并非所有主机都支持使用复制功能,这被认为存在安全风险。 如果您想将图像上传到服务器,请考虑创建一个HTML表单,就像这里所做的一样。 如果这样做,您将能够从$ _FILES数组中获取mime类型,不仅知道您是否正在上传图片,还知道您要上传哪种图片类型(例如png,jpeg,gif) 。

如果您正在寻找一种限制上传图片大小的方法,那么就像其他人说的那样,您可以使用getimagesize函数,但是如果显示图片有问题,则可以使用timthumb之类的脚本,您可以将图片路径传递给该脚本,并将其调整为您指定的尺寸(运行中)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM