文档章节

自己的写代码竟然记不得了

o
 oneboi
发布于 2016/11/17 16:37
字数 382
阅读 1
收藏 0
点赞 0
评论 0
<?php 

// $path原始图像路径
// width宽度

function resizeImage($path,$width,$newname,$quality=75)
 {



       //获得原始图片的宽和高以及图片类型
	   $imginfo=getimagesize($path);
	   $pic_width = $imginfo[0]; 
	   $pic_height =$imginfo[1] ;
	   $pic_type=image_type_to_extension($imginfo[2] ,false);


	    //压缩比:
	    $ratio=$width/$pic_width;
	   //新的高和宽
		   $newwidth=$width;
		   $newheight=$pic_height*$ratio;

       //构建图片创建函数
        $fun="imagecreatefrom{$pic_type}";


           
        //$im=$fun($path);
        //
        //
        
         $im=imagecreatefromjpeg($path);


         
   

	   if(function_exists("imagecopyresampled"))
	   {


			  $newim = imagecreatetruecolor($newwidth,$newheight);//创建新图片



			imagecopyresampled($newim,$im,0,0,0,0,$newwidth,$newheight,$pic_width,$pic_height);//压缩图片


	    }
	    else
	    { 
	    	$newim = imagecreate($newwidth,$newheight);
	    	imagecopyresized($newim,$im,0,0,0,0,$newwidth,$newheight,$pic_width,$pic_height);
	    }

         //销毁原始图片
         imagedestroy($im);

         //保存新图片
         
         $func="image{$pic_type}";
         $bool=$func($newim,$newname,$quality);
         if($bool){

         	return $newname;
         }

         //销毁原始图片
    imagedestroy($newim);

 }



$root=$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];

//获得参数

if(!isset($_GET['img'])){

	header("HTTP/1.0 404 Not Found");
	header("Status: 404 Not Found");
	exit;
}
  $img=$_GET['img'];



 $newurl=$_SERVER['HTTP_HOST']."/yxtcms/".$_GET['img'];//最终图片地址
 $img="./".$img;//拼接地址

if(file_exists($img)){

$info=getimagesize($img);
header("content-type:".$info['mime']);
echo file_get_contents($img);
 exit;
}

// http://localhost/141/yxtcms/pic.php?img=Uploads/2016-03-07/56dcf6ec76e8a.jpg!720x70.jpg

//$img=Uploads/2016-03-07/56dcf6ec76e8a.jpg!720x70.jpg
$img=$_GET['img'];


$explode1=explode('!', $img);

$imgurl=$explode1[0];//Uploads/2016-03-07/56dcf6ec76e8a.jpg
$imginfo=$explode1[1];//720x70.jpg
$hasurl="./".$imgurl;

if(file_exists($hasurl)){

$img=$_GET['img'];
$explode1=explode('!', $img);
$imgurl=$explode1[0];//Uploads/2016-03-07/56dcf6ec76e8a.jpg
$imginfo=$explode1[1];//720x70.jpg
$data1=pathinfo($imginfo);//720x70.jpg

//获得宽度个质量
$data2=explode('x',$data1['filename']);//720x70
$width=$data2[0];
$quality=$data2[1];

$path="./".$imgurl;
$newname=$img;


resizeImage($path,$width,$newname,$quality=75);

$info=getimagesize($newname);
header("content-type:".$info['mime']);
echo file_get_contents($img);
 exit;
}else{

	header("HTTP/1.0 404 Not Found");
	header("Status: 404 Not Found");
}





// http://localhost/141/yxtcms/Uploads/2015-11-18/564be44599944.jpg











 ?>

需要 获取当前的 的URL  地址

$url_this =  "http://".$_SERVER ['HTTP_HOST'].$_SERVER['PHP_SELF'];
echo $url_this;

http://www.blogjava.net/bluesky/archive/2005/12/26/25421.html

© 著作权归作者所有

共有 人打赏支持
o
粉丝 2
博文 89
码字总数 29764
作品 0
昆明
php求学路 “虚拟项目二”

时间慢慢向冬天迈进,我在兴趣小组里的时间也在一天天的积累中,这时候我迎来第一次像样的项目,就是在剩下的人中组织一次团体合作做一个bbs系统,主要分工:4个程序员,1个美工。 因为是团体...

路边拾草人
2011/05/28
0
0
有关int 和 Object 转换问题(oracle 10 默认JDK 1.4.2)

前天使用rhino 和js做了一个oracle的function,由于客户使用的是oracle 10,所以只支持jdk1.4.2的,其实很简单的,就是让oracle的函数支持使用javascript编写,实现过程较为简单,就是在传递参...

idoz
2013/05/29
0
0
有没有人在deepin10.12编译安装成功MYSQL?

CENTOS 5.5,MYSQL5.1.55编译安装成功,DEEPIN10.12编译安装MYSQL就不行,configure的时候出错,错误信息有两条,具体记不清楚了,一个是in /home/ocera/mysql5-1-55什么的,另个那个记不得了. 但是...

月影
2011/03/29
484
4
只有程序员才有的12个习惯, 占了一半以上才是真程序员!

程序员的日常通常是写代码,看别人写的代码,改别人写的代码。 当一个程序员是什么样的一种体验?领着高薪、生活滋润这是自然的。 程序员是比较富有的一个群体,却很少炫富。 程序员的话不多,...

你的社交帐号昵
06/04
0
0
记录一次面试

最近看书没有动力,公司里面太闲了。想给点压力给自己,如果有好机会也可以跳一下。只投了A和B。结果B家的没有回音,A家面试官打电话过来约面试。 总共面了三次,都是电话面试。我靠着回忆把...

Lubby
2016/01/21
449
7
用 struct 实现类似 swift 的枚举类型

swift的枚举类型非常方便,即可以赋值字符串又可以使用函数。 记得之前看到过一个objective-c下用struct实现的类似的东西,貌似是通过struct里面函数定义指针,然后通过函数return值来实现的...

独-奏
2014/09/24
109
1
偶尔看到虫师的博客挺有感触

 软件测试两三年,编程能力半生不熟,三流学校出身,E很差,工作主要还是写各种测试文档和手工测试;相信不少测试人员都和这情况相似;下面就这几个方面谈一下自己的看法。 关于编程的能力 ...

天马行空的鱼
2016/02/22
163
0
Android Multimedia Framework overview(多媒体框架概述)-...

不知为啥今晚突然脑海中闪现出一个念头:写博客!原因有二,其一就是记录下自己的学习所得,巩固自己的知识,温故而知新吧,以前都是光看光想,都没有记录,而且不写下来,领悟估计就差点了,...

tjy
2012/08/23
0
1
重新打包用户量过亿的开源截图软件——加入图片自动上传到图床的功能

有点标题党的感觉,但是我今天说的这个软件确实很多人都用,叫做Greenshot。咨询了它的作者,用户量竟然过亿。 先展示一下成果 为了更方便的使用七牛云的图床服务,去年实现了一个开源截图工...

harlanc
02/09
0
0
kaldi timit irstlm

在kaldi 中运行 timit 例子时 提示 irstlm 找不到 具体的提示记不得了 差不多类似 仔细看输出内容,可以看到提示信息,可以在tools/extras目录下看到 installirstlm.sh 我第一次直接在当前目...

Moy
2015/09/22
163
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

百度云iOS架构师在职场中的忠告

1.工具不能代替思考 在我多年的咨询工作和与许多组织和管理者的共事中,我发现了修复问题的共同套路,那就是管理人员相信工具可以“解决”给出的问题。当问题域被理解透彻,并且不可能有很多...

_小迷糊
21分钟前
0
0
Java基础——异常

声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。 异常处理: 可以挖很多个陷阱,但是不要都是一样...

凯哥学堂
34分钟前
0
0
180723-Quick-Task 动态脚本支持框架之结构设计篇

文章链接:https://liuyueyi.github.io/hexblog/2018/07/23/180723-Quick-Task-动态脚本支持框架之结构设计篇/ Quick-Task 动态脚本支持框架之结构设计篇 相关博文: 180702-QuickTask动态脚本...

小灰灰Blog
37分钟前
0
0
SBT 常用开发技巧

SBT 一直以来都是 Scala 开发者不可言说的痛,最主要的原因就是官方文档维护质量较差,没有经过系统的、循序渐进式的整理,导致初学者入门门槛较高。虽然也有其它构建工具可以选择(例如 Mill...

joymufeng
42分钟前
0
0
HBase in Practice - 性能、监控及问题解决

李钰(社区ID:Yu Li),阿里巴巴计算平台事业部高级技术专家,HBase开源社区PMC&committer。开源技术爱好者,主要关注分布式系统设计、大数据基础平台建设等领域。连续4年基于HBase/HDFS设计和...

中国HBase技术社区
43分钟前
1
0
ES18-JAVA API 批量操作

1.批量查询 Multi Get API public static void multiGet() {// 批量查询MultiGetResponse response = getClient().prepareMultiGet().add("my_person", "my_index", "1")// 查......

贾峰uk
47分钟前
0
0
SpringBoot2.0使用health

1,引入actuator <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency> 2,application.properties ......

暗中观察
54分钟前
0
0
阿里巴巴Java开发规约

###编程规约 命名风格 【强制】代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束 【强制】代码中的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。...

简心
59分钟前
0
0
如何用TypeScript来创建一个简单的Web应用

转载地址 如何用TypeScript来创建一个简单的Web应用 安装TypeScript 获取TypeScript工具的方式: 通过npm(Node.js包管理器) npm install -g typescript 构建你的第一个TypeScript文件 创建...

durban
今天
0
0
分享好友,朋友圈自定义分享链接无效

这个问题是微信6.5.6版本以后,修改了分享规则:分享的连接必须在公众号后台设定的js安全域名内

LM_Mike
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部