场景描述
项目需要有个图片上传的功能,根据需求直接使用前端小哥写好的页面。
前端直接可以判断上传文件的大小,并且很友好的显示出选择的图片。PHP后台一般直接从$_FILE这个魔术变量里面获取上传文件信息,不过我在获取前端约定好的字段时,并没有读取到该字段的信息,这是为什么呢?
问题分析
先不看前端是怎么写的,直接选择一个图片,打开chrome检查元素,看关键部分:
猜前端小哥直接把原来的file转编成了base64的字符串。为什么是字符串?Google的结果得知,Base64是一组相似的二进制到文本(binary-to-text)的编码规则。
实践
知道传过来的是字符串,那就可以直接通过对应字段获取,最后把它转存起来,变成图片。