zoukankan      html  css  js  c++  java
  • 总结今天项目上传头像中有关base64遇到的问题

    由于公司需要,在做项目的时候,涉及到上传头像的部分,在php中,上传图片是一种很简单的事情。
    但是需要实现仿QQ,新浪需要对图片截取图片,就不那么容易,我采取的是canvas获取getDataURL,然后将数据通过ajax发送到后台服务器并保存到数据库中
    再通过img的src属性进行读取数据库中的数据,在展现出来,但是因为项目中有留言板,这里会出现一个问题,就是图片保存为base64数据虽然可以减小一次http请求
    但是重要的事情说三遍,只对于小图片可以,将大图片的getDataURL存取在数据库中,会导致加载过慢
    所以不得不对此进行优化,即如何将base64编码在服务器端保存为图片
    1.首先要用正则去掉开头的"data:image/png;base64,"
    2.使用base64_decode函数进行解码

    3使用file_put_contents将它保存为一张图片

    4.数据库中存取img的路径

  • 相关阅读:
    shell脚本基础
    rtsp冷门解释
    C++基础之动态内存
    树莓派3安装ros
    Trie树
    [LeetCode]The Skyline Problem
    [LeetCode]Implement Trie (Prefix Tree)
    C++基础之适配器
    配置树莓派3的openwrt中的网络
    [LeetCode]Self Crossing
  • 原文地址:https://www.cnblogs.com/studyhtml5/p/6134351.html
Copyright © 2011-2022 走看看