public function index(){ $img = 'http://img.pf.loc/static/images/2016/05/24/21d98edf98bd6c30afe1c83891132c2f1374.png'; $base64_img = self::base64EncodeImage($img); echo '<img src="' . $base64_img . '" />'; } function base64EncodeImage ($image_file) { $base64_image = ''; $image_info = getImageSize($image_file); $image_path = 'E:/data/www/lamahui/aliyun_imgs/static/images/2016/05/24/21d98edf98bd6c30afe1c83891132c2f1374.png'; $image_data = fread(fopen($image_file, 'r'), filesize($image_path)); $base64_image = 'data:' . $image_info['mime'] . ';base64,' .chunk_split(base64_encode($image_data)); return $base64_image; }
用到的PHP 函数
getImageSize()---->获取图片的信息,输出结果为:
array (size=6) 0 => int 601 1 => int 601 2 => int 3 3 => string 'width="601" height="601"' (length=24) 'bits' => int 8 'mime' => string 'image/png' (length=9)
fopen(string $filename , string $mode)----->打开文件或URL ,其中 $mode 有如下方式打开:
r:只读方式打开,将文件指针指向文件头。
r+:读写方式打开,将文件指针指向文件头。
w:写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
w+:读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
a:写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
a+:读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
filesize(string $filename_path)-------->取得文件大小,其中要注意的是,里面的参数要是存储图片的路径,