仓酷云

标题: PHP教程之用php和imagemagick来处置图片文件的上... [打印本页]

作者: 灵魂腐蚀    时间: 2015-2-4 00:24
标题: PHP教程之用php和imagemagick来处置图片文件的上...
我的文章不会对您的学习起到实质性的作用,您能否成功,还得靠自己的,坚持,坚持,再坚持,就是步入成功的不二法门。上传   用php和imagemagick来处置图片文件的上传和缩放处置
php处置文件的上传是很简捷的,然而假如要对上传的图片停止缩放处置的话,虽然说能用GD来做,然而
要停止对照繁琐的处置。ImageMagick是一个图象处置包,普通的Linux软件包中城市有的。它包括了许
多处置图象的东西,它可以停止图象文件格局的转化还可以对图象停止各类处置,个中咱们将用到它的
图象缩放功效。这个经由过程它的软件包中的东西convert来完成,如许来挪用
        convert -geometry 宽x高 源文件 缩放后的文件
        
请在以后目次下创立一个images的目次,而且能让web履行用户可写,这个目次用来寄存上载后的图片和

缩放的图片。
底下是一个复杂小例子,包含图片上传和处置,在RedHat6.0+php3.0.12下测试经由过程。

uploadform.html:文件上传表单

〈HTML>
〈HEAD>
〈TITLE>选择文件〈/TITLE>
〈/HEAD>
〈BODY ALIGN="CENTER">
〈FORM ENCTYPE="multipart/form-data" ACTION="upload.php3" METHOD=POST>
选择图片文件: 〈INPUT NAME="image" TYPE="file">
〈INPUT TYPE="submit" VALUE="Send File">
〈/FORM>
〈/BODY>
〈/HTML>


upload.php3:处置上传后的图片文件

〈html>
〈head>
〈title>处置〈/title>
〈/head>
〈body>
〈?
$flag = "true";
if(isset($image) && $image &&
        ($image_type = "image/gif" || $image_type = "image/png"
                || $image_type = "image/pjpeg")){       //判别上载文件的格局等
        $dest_image = "./images/".$image_name;
        if(@copy($image,$dest_image)){  //拷贝上载文件到images目次下

           $small_image = "./images/small".$image_name;
           $exec_str = "/usr/bin/X11/convert -geometry 100x100 ".$dest_image." ".$small_image;            
           @exec($exec_str);       //停止图象的缩放
        }else
                $flag = "false";

}else{

        
        $flag = "false";
}

if( $flag == "false"){
        echo "error〈p>";
        echo "〈a href=\"uploadform.html\">从头上载〈/a>";
}else{
        echo "〈image src=\"$small_image\">";
        echo "〈image src=\"./images/$image_name\">";
}      
?>
〈/body>
〈/html>

假如联合GetImageSize函数,咱们还可以掌握缩放的巨细。联合数据库可以对图片文件停止索引或存储等。
ImageMagick的功效是很壮大的,不但能对图片文件停止缩放,还有停止翻转、格局转化等等功效。
读者可以本人参看ImageMagick的匡助文件。
  学会了PHP,那么学其他的语言,肯定速成,反过来也一样,如果你之前学过其他的语言,那么学PHP肯定快。
作者: 小妖女    时间: 2015-2-4 13:00
当然这种网站的会员费就几十块钱。
作者: 飘灵儿    时间: 2015-2-7 12:52
做为1门年轻的语言,php一直很努力。
作者: 愤怒的大鸟    时间: 2015-2-7 14:37
这些中手常用的知识,当你把我说的这些关键字都可以熟练运用的时候,你可以选择自己
作者: 飘飘悠悠    时间: 2015-2-9 23:34
当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标,
作者: 再现理想    时间: 2015-2-11 09:06
建数据库表的时候,int型要输入长度的,其实是个摆设的输入几位都没影响的,只要大于4就行,囧。
作者: 金色的骷髅    时间: 2015-2-14 00:26
多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。
作者: 变相怪杰    时间: 2015-2-16 11:49
实践是检验自己会不会的真理。
作者: 灵魂腐蚀    时间: 2015-2-22 00:57
要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。
作者: 透明    时间: 2015-2-25 15:29
爱上php,他也会爱上你。
作者: 乐观    时间: 2015-3-6 20:20
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
作者: 莫相离    时间: 2015-3-11 18:25
有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。
作者: 不帅    时间: 2015-3-18 11:13
使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。
作者: 柔情似水    时间: 2015-3-21 21:25
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
作者: 深爱那片海    时间: 2015-3-24 06:13
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
作者: 第二个灵魂    时间: 2015-3-25 13:53
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线  \\\\\\\'_\\\\\\\' ;
作者: 精灵巫婆    时间: 2015-3-26 07:13
要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。
作者: 山那边是海    时间: 2015-3-30 05:43
兴趣是最好的老师,百度是最好的词典。
作者: admin    时间: 2015-4-1 07:43
兴趣是最好的老师,百度是最好的词典。
作者: 再见西城    时间: 2015-4-1 17:08
个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2