首頁 > 後端開發 > php教程 > PHP读取图片,读取到的字节比图片实际字节多了,仔细研读了PHP手册自认为代码没有关问题

PHP读取图片,读取到的字节比图片实际字节多了,仔细研读了PHP手册自认为代码没有关问题

WBOY
發布: 2016-06-13 13:01:28
原創
1108 人瀏覽過

PHP读取图片,读取到的字节比图片实际字节多了,仔细研读了PHP手册自认为代码没问题
我的Code如下:

<?php<br />
 <br />
  $filepath="c:\123.jpg";<br />
  $filesize=filesize($filepath);<br />
  $fs=fopen($filepath,"r");<br />
  $readlen=1024;//每次读取多少字节<br />
  $rlen=0;//共读取多少字节<br />
  while(!feof($fs)){<br />
    	$data=fread($fs,$readlen);<br />
    	$rlen+=$readlen;<br />
   }<br />
   fclose($fs);<br />
   echo '文件大小'.$filesize.'<br/>';<br />
   echo '读取大小'.$rlen.'<br/>';<br />
?>
登入後複製

PHP朋友们给看看,我电脑系统windows 7的,这应该与系统无关系.
------解决方案--------------------
这恰恰与系统有关!
window 的文件打开方式有文本方式和二进制方式的区别
文本方式下,会对每个 \n (不是 \r\n 组合)附加一个 \r,形成 \r\n
所以字节数就多出来了

你需要用二进制防止打开图片
$fs=fopen($filepath,"rb");

或者直接用 file_get_contents

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板