http://blog.csdn.net/RE_PHPzjw/article/details/72640196
例一
//直接拿到微信的base64编码字符,默认是不带data:image/jpg;base64 前端的,直接用写入jpg文件方法
//得到签名,用于h5分享功能 require_once "jssdk.php"; $jssdk = new JSSDK("wx9c3b4aec434536e8", "05c5757455cef057cb0a1fbfee037136"); //旧 $access_token = $jssdk->getLocalAccessToken(); $url = "http://file.api.weixin.qq.com/cgi-bin/media/get?access_token=$access_token&media_id=HRsL0I9qkeqKApF3NAHsyDSVTNZBrLdDddMmWIRbluGpyXdC4Cl9S-UTeM45I9S-"; $a = file_get_contents($url); $filename = date('YmdHis').rand(1000,9999).'.jpg'; //以读写方式打开一个文件,若没有,则自动创建 $resource = fopen("/data/web/wap/rusi-web/mobile/base64/".date("Ymd",time())."/".$filename, 'w+'); //将图片内容写入上述新建的文件 fwrite($resource, $a); //关闭资源 fclose($resource); echo 'over';die();
例二 带data:image/jpg;base64 前端的,直接用写入jpg文件方法
function base64_image_content($base64_image_content,$path){ //匹配出图片的格式 if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64_image_content, $result)){ $type = $result[2]; $new_file = $path;//."/".date('Ymd',time())."/"; if(!file_exists($new_file)){ //检查是否有该文件夹,如果没有就创建,并给予最高权限 mkdir($new_file, 0700); } $new_file = $new_file.time().".{$type}"; if (file_put_contents($new_file, base64_decode(str_replace($result[1], '', $base64_image_content)))){ return '/'.$new_file; }else{ return false; } }else{ return false; } }