php从数据uri获取文件大小

时间:2015-06-04 09:44:11

标签: php image-uploading

我的表单中有一个表单上传插件,可以使用data uri上传图片,例如

$img = 'data:image/jpeg;base64,/9j/4QAYRXhpZ...............

我需要文件大小限制,例如文件大小不应超过1MB。

我可以使用list($width, $height) = getimagesize($img);获取图像尺寸(宽度和高度)。

如何获取相同的文件大小。 php中是否有任何预先定义的函数可以用来获取文件大小data uri

1 个答案:

答案 0 :(得分:4)

您可以使用strlen来获取字符串(以及文件)的大小(以字节为单位)。 base64数据比二进制数据大1/3,所以不要忘记先base64_decode

然后你的代码是:

$img = 'base64,/9j/4QAYRXhpZ...............';
echo 'File Size: ' . strlen(base64_decode($img));

如果您想要更准确,请不要忘记删除标题(“data:image / jpeg”等)。