上节中,前端的JS代码实现了将canvas控件生成的图片数据传递给后台。本节记录如何利用PHP将接收到的图片数据保存在服务器端,并将图片存储路径写入浏览器cookie,共用户分享使用。源码如下:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?php
//设置图片上传路径
define('UPLOAD_PATH', 'images/');
// 接收 POST 进来的 base64 DtatURI String类型的图片数据
$img = $_POST['data'];
if($img != '')
{
// 转换并以png格式存储图片
$img = str_replace('data:image/png;base64,', '', $img);
$img = str_replace(' ', '+', $img);
$data = base64_decode($img);
$file = UPLOAD_PATH . uniqid() . '.png';
$success = file_put_contents($file, $data);
//设置cookie将图片保存路径写入浏览器端供用户分享
setcookie('filecookie',$file,time()+3600);
}
?>