我有一个表单上传插件在我的表单中使用data uri
上传图像,如
$img = 'data:image/jpeg;base64,/9j/4QAYRXhpZ...............
我需要有文件大小限制,如文件大小不应超过1MB。
我可以得到图像的尺寸(width &高度)使用list($width, $height) = getimagesize($img);
。
我怎么能得到相同的文件大小。是否有任何预定义的功能在php
,我可以用它来获得data uri
的文件大小
您可以使用strlen
以字节为单位获取字符串(以及文件)的大小。base64数据比二进制数据大1/3,所以不要忘记先设置base64_decode
。
那么你的代码是:
$img = 'base64,/9j/4QAYRXhpZ...............';
echo 'File Size: ' . strlen(base64_decode($img));
如果你想要更准确,不要忘记去掉标题("data:image/jpeg"等)