当前位置:首页 » 编程语言 » php图片类型

php图片类型

发布时间: 2022-12-10 08:59:04

php上传bmp图片类型问题

imagecreatefromwbmp() 这个函数 不能针对bmp文件操作,因为两个根本不是什么相似的文件类型。

php5版本还没有 imagecreatefrombmp() 这个函数(是bmp不是wbmp)
所以无法创建bmp图像。

所以那啥,要么你自己写一个imagecreatefrombmp()进行扩展。
要么就源文件上传。

㈡ PHP怎么转换图片格式

用下面代码(PHP必须支持GD库)
$input=上传的BMP文件名
$output=要存的jpeg文件名
$image=imagecreatefromwbmp($input);
imagejpeg($image,$output);
imagedestroy($image);
unlink($input);
用GD库还可以加水印、改大小等,网上都有,一搜就行。我是按照PHP手册
你可以去后盾人平台看一下,里面的东西不错

㈢ php转换图片类型

客户端通过html里面的input name="apic" type="file"表单form提交这个图片,在服务端通过$_FILES['apic']得到图片信息后,检测图片的格式是否为所允许的(*.bmp,*.jpg),检测OK后进行图片的压缩转存后,在数据库存上新生成的jpg的图片路径地址;
其中压缩图片的办法给你发一种:
http://code.itlearner.com/php/bmp.html
看看这个压缩bmp的类,即学即用。

㈣ 如何用php调用图片

写个复杂点的答案,有些场合要用到。见笑

<?php
header('Content-Type:image/jpeg');
$data=file_get_contents('/tupian/1.jpg');
echo$data;
?>

㈤ php 验证上传的文件类型为图片,并获得文件的后缀名

以下是我上传了一个图片后显示的 $_FILES['filename']的信息
[filename] => Array
(
[name] => Winter.jpg
[type] => image/jpeg
[tmp_name] => /tmp/php2jw7QX
[error] => 0
[size] => 105542
)
其中type是文件类型的minitype 表示方法,例如普通的HTML的类型是text/html
如果你想用扩展名的方式判断的话可以用以下代码:
<?php
#允许的文件扩展名
$allowed_types = array('jpg', 'gif', 'png');
$filename = $_FILES['filename']['name'];
#正则表达式匹配出上传文件的扩展名
preg_match('|\.(\w+)$|', $filename, $ext);
#print_r($ext);
#转化成小写
$ext = strtolower($ext[1]);
#判断是否在被允许的扩展名里
if(!in_array($ext, $allowed_types)){
die('不被允许的文件类型');
}
?>

㈥ PHP 图片类型判断 生成

你的代码不是都写好的吗,你在程序里面echo $file_type ;分别上传jpg、gif等图片,看看输出的类型的编码是什么,然后在程序里面分别判断即可,例如:

if ( $file_type == '???测试中看见的结果???') $img_r = imagecreatefromjpeg($src);
elseif ( $file_type == '???测试中看见的结果???') $img_r = imagecreatefromgif($src);

我的程序是使用的下面的方式检测文件类型,并且修正扩展名:
$tmp_name=$_FILES["$f_image"][tmp_name];
$imginfo=getimagesize($tmp_name);
//压缩宽度超过1024的图片为1024,100K以上的JPG图片用30%进行压缩
if ($imginfo[0]>1024){
echo "你上传的图片幅面为 $imginfo[0] x $imginfo[1] ,将被压缩到1024个象素宽。<br>";
system('"C:\Program Files\ImageMagick-6.0.7-Q16\convert.exe"'." -sample 1024 -quality 80 $tmp_name $tmp_name");
} elseif($imginfo[2]==2 && $src_size>102400) system('"C:\Program Files\ImageMagick-6.0.7-Q16\convert.exe"'." -quality 60 $tmp_name $tmp_name");
//规范化图片文件扩展名
if ($imginfo[2]==1) $ext='gif';
elseif ($imginfo[2]==2) $ext='jpg';
elseif ($imginfo[2]==3) $ext='png';
elseif ($imginfo[2]==4) $ext='swf';
elseif ($imginfo[2]==5) $ext='psd';
elseif ($imginfo[2]==6) $ext='bmp';
elseif ($imginfo[2]==7) $ext='tiff';
elseif ($imginfo[2]==8) $ext='tiff';
//压缩BMP、TIFF文件为JPG格式
if ($imginfo[2]==6 || $imginfo[2]==7 || $imginfo[2]==8){
system('"C:\Program Files\ImageMagick-6.0.7-Q16\convert.exe"'." -quality 80 $tmp_name $tmp_name.jpg");
rename("$tmp_name.jpg",$tmp_name);
$ext='jpg';
}

㈦ 用php上传图片怎么做

上传图片原理:首先判断文件类型是否为图片格式,若是则上传文件,然后重命名文件(一般都是避免上传文件重名,现在基本上都是以为时间来命名),接着把文件上传到指定目录,成功上传后输出上传图片的预览。

1.首先我们开始判断文件类型是否为图片类型用到的函数

{
strrchr:查找字符串在另一个字符串中最后一次出现的位置,并返回从该位置到字符串结尾的所有字符。
substr: 取部份字符串。
$HTTP_POST_FILES['file']['name']:获取当前上传的文件全称。
}
图片类型就是“.”后面的字符(比如:一个文件名称为XXX.JPG 那么它的类型就是“.”后面的JPG)。 我们可以用PHP中的函数来截取上传者文件名字的。我们来写个获取文件类型的函数

<?
function type()
{
return substr(strrchr($HTTP_POST_FILES['file']['name'],'.'),1);
}
?>
2.若是则上传文件,然后重命名文件用到的函数

{ strtolower:把字符串的字母全部转换为小写字母. in_array: 函数在数组中搜索给定的值。 implode:函数把数组元素组合为一个字符串 random:随机生成的数 $_FILES['userfile']['name']:上传文件名称 $uploaddir:自己定义的变量。比如在同一个文件夹里面,你想把上传的文件放到这个文件夹的FILE文件夹下,你可以这样定义$uploaddir="./file/";注意写法 } 这边会出现很多问题,第一先写一个能上传类型的数组。第二判断文件合法性。第三给文件重名。*(这边判断文件大小就不写了)先定义允许上传文件的类型数组:$type=array("jpg","gif","bmp","jpeg","png");第二用一个IF。。else。。写一个判断文件合法性的控制流语句。if(!in_arry(strtolower(type()),$type))//如果不存在能上传的类型 { $text=implode('.',$type); echo "您只能上传以下类型文件: ",$text,"<br>"; } 下面就是给他们重新命名了,else { $filename=explode(".",$_FILES['userfile']['name']);//把上传的文件名以“.”好为准做一个数组。 $time=date("m-d-H-i-s");//去当前上传的时间 $filename[0]=$time;//取文件名t替换 name=implode(".",$filename); //上传后的文件名 $uploadfile=$uploaddir.$name;//上传后的文件名地址 } 3.最后把文件上传到指定目录,成功上传后输出上传图片的预览用到的函数{ move_uploaded_file:执行上传文件 } if(move_uploaded_file($_FILES['userfile']['tmp_name'],$uploadfile)) { echo "<center>您的文件已经上传完毕 上传图片预览: </center><br><center><img src='$uploadfile'></center>"; echo"<br><center><a href='javascrīpt:history.go(-1)'>继续上传</a></center>"; } else { echo"传输失败!"; }

㈧ 如何使用PHP实现图像比较

<?php
/**
* 图片相似度比较
*
* @version $Id: ImageHash.php 4429 2012-04-17 13:20:31Z jax $
* @author jax.hu
*
* <code>
* //Sample_1
* $aHash = ImageHash::hashImageFile('wsz.11.jpg');
* $bHash = ImageHash::hashImageFile('wsz.12.jpg');
* var_mp(ImageHash::isHashSimilar($aHash, $bHash));
*
* //Sample_2
* var_mp(ImageHash::isImageFileSimilar('wsz.11.jpg', 'wsz.12.jpg'));
* </code>
*/

class ImageHash {

/**取样倍率 1~10
* @access public
* @staticvar int
* */
public static $rate = 2;

/**相似度允许值 0~64
* @access public
* @staticvar int
* */
public static $similarity = 80;

/**图片类型对应的开启函数
* @access private
* @staticvar string
* */
private static $_createFunc = array(
IMAGETYPE_GIF =>'imageCreateFromGIF',
IMAGETYPE_JPEG =>'imageCreateFromJPEG',
IMAGETYPE_PNG =>'imageCreateFromPNG',
IMAGETYPE_BMP =>'imageCreateFromBMP',
IMAGETYPE_WBMP =>'imageCreateFromWBMP',
IMAGETYPE_XBM =>'imageCreateFromXBM',
);

/**从文件建立图片
* @param string $filePath 文件地址路径
* @return resource 当成功开启图片则传递图片 resource ID,失败则是 false
* */
public static function createImage($filePath){
if(!file_exists($filePath)){ return false; }

/*判断文件类型是否可以开启*/
$type = exif_imagetype($filePath);
if(!array_key_exists($type,self::$_createFunc)){ return false; }

$func = self::$_createFunc[$type];
if(!function_exists($func)){ return false; }

return $func($filePath);
}

㈨ php判断一个文件的类型是否为图片格式(jpg gif png格式)用in array格式做

$kuozhan=array('jpg','gif','png');
$flag = 1; // 判断上传文件是否格式正确,正确则为1 , 有一个格式错误则0
// 循环,检测格式是否错误

foreach($val['tmp_name'] as $key=>$us){
foreach($val['name'] as $key=>$ns){
$arr=pathinfo($val['name'][$key]);
if(!in_array($arr['extension'],$kuozhan)){
echo " 上传失败,格式错误!";
$flag = 0; // 格式有错,flag为0

break;

}
}
}
// 上传文件
if ($flag == 1) {
循环上传文件

}

热点内容
刀剑乱舞脚本ios 发布:2025-01-21 09:41:06 浏览:521
2编程 发布:2025-01-21 09:36:50 浏览:776
把我的世界的ice服务器炸了 发布:2025-01-21 09:31:01 浏览:681
sql数据库导入数据 发布:2025-01-21 09:25:21 浏览:420
zynqsdk修改编译选项 发布:2025-01-21 09:22:30 浏览:875
存储器部件教学实验 发布:2025-01-21 09:14:06 浏览:179
php安装memcached扩展 发布:2025-01-21 09:07:06 浏览:546
手机缓存视频到电脑上 发布:2025-01-21 09:07:02 浏览:978
如果知道服务器ip有什么风险 发布:2025-01-21 09:06:58 浏览:525
在压缩曲线 发布:2025-01-21 09:05:31 浏览:910