先来两个参考网址:
http://kuro.tw/posts/2013/09/08/php-html5-canvas-resulting-base64-datauri-images-will-be-uploaded-to-the-server-side-processing
http://www.oschina.net/question/2261060_213583
实际这两个网址都说的很清楚了,处理图片是用的base64编码的方式
$file=$_POST['file'];
        if($file)
        {
            preg_match('|data:image/([a-zA-Z]+);base64,|s',$file,$match);
            $file_name=md5($uid).'.'.$match[1];
            $fp=fopen(__ROOTDIR__.'/upload/avatar/'.$file_name,'w+');
            //去除base64不能解码的部分
            $file=str_replace('data:image/'.$match.';base64,','', $file);
            $file=str_replace(' ','+',$file);
            //解码存放
            $file=base64_decode($file);
            fwrite($fp,$file);
            fclose($fp);
            $data['status']=1;
            $data['data']='http://www.meiyoule.com/upload/avatar/'.$file_name;
        }