<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>http://www.jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>http://www.jackxiang.com/post//</link>
<title><![CDATA[PHP读取图像文件并在浏览器上显示 ]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[Php/Js/Shell/Go]]></category>
<pubDate>Sat, 26 Oct 2013 10:31:23 +0000</pubDate> 
<guid>http://www.jackxiang.com/post//</guid> 
<description>
<![CDATA[ 
	背景：外包水平太差了，上传图片裁剪，先放服务器，再读取裁剪，我记得可以在用户本地裁剪的，这块都写成那样了，就那样吧，这块设计到图片显示，因支持多个域名和部署问题这块还得直接显示，PHP直接显示图片,用浏览器访问是不可能的，要用SRC：&lt;img src=&quot;http://jackxiang.com/logo/getpic?filename=201310262031159804.png&amp;amp;rand=1382790675000&quot;&gt;。<br/>PHP读取图像文件并在浏览器上显示 <br/>去年做过一个项目,要把用户上传的图像文件用PHP读取图像文件并列出文字清单,当用户点击一个文件名后,就可以显示这个图像.<br/><br/>因为要考虑兼容各种不同的图像格式, 我使用了GD库, 判断出具体是那种图像文件(MINE),再调用相应的image生成函数imagecreatefromXXX(),生成一个img,再将这个img以jpeg格式输出至浏览器,虽然做出来了,但总觉得不满意.<br/><br/>今天有机会重新考虑这个功能,在php手册中发现几行代码,简洁明快,完全能实现我要的功能,还不需要GD库<br/><br/>代码如下:<br/> <br/>$size = getimagesize($filename); //获取mime信息<br/>$fp=fopen($filename, &quot;rb&quot;); //二进制方式打开文件<br/>if ($size &amp;&amp; $fp) &#123;<br/>header(&quot;Content-type: &#123;$size[&#039;mime&#039;]&#125;&quot;);<br/>fpassthru($fp); // 输出至浏览器<br/>exit;<br/>&#125; else &#123;<br/>// error<br/>&#125;<br/>?&gt;<br/><br/>代码量是我原来的1/10都不到,速度快了N倍. <br/>外包说三年经验，这个没调出来，我看未必啊，<br/>给他下面的参考代码都给弄错了，我调通了下，他继续：<br/><textarea name="code" class="php" rows="15" cols="100">
&nbsp;&nbsp;&nbsp;&nbsp;function getpic()&#123;
&nbsp;&nbsp;&nbsp;&nbsp;$request = $this-&gt;getRequest();
&nbsp;&nbsp;&nbsp;&nbsp;$fileName = $this-&gt;request-&gt;getParam(&#039;filename&#039;,&#039;&#039;);
&nbsp;&nbsp;&nbsp;&nbsp;$directory = Ko::config(&#039;config.upload.directory&#039;);
&nbsp;&nbsp;&nbsp;&nbsp;$attach = &#039;/temp/&#039; . $fileName;
&nbsp;&nbsp;&nbsp;&nbsp;$pic_path = $directory.$attach;
&nbsp;&nbsp;&nbsp;&nbsp;if(file_exists($pic_path))&#123;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$size = getimagesize($pic_path); //获取mime信息 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$fp=fopen($pic_path, &quot;rb&quot;); //二进制方式打开文件 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ($size &amp;&amp; $fp) &#123; 
&nbsp;&nbsp;&nbsp;&nbsp;header(&quot;Content-type: &#123;$size[&#039;mime&#039;]&#125;&quot;); 
&nbsp;&nbsp;&nbsp;&nbsp;fpassthru($fp); // 输出至浏览器 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125; 
&nbsp;&nbsp;&#125;else&#123;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo &quot;dasd&quot;;exit;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;
&nbsp;&nbsp;&nbsp;&nbsp;&#125;
</textarea><br/>来处：http://www.shangxueba.com/jingyan/122754.html
]]>
</description>
</item><item>
<link>http://www.jackxiang.com/post//#blogcomment</link>
<title><![CDATA[[评论] PHP读取图像文件并在浏览器上显示 ]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://www.jackxiang.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>