我想读取cookie并使用php计算服务器端的长度,但无法找到任何直接的方法。那么如何实现这个任务呢?在PHP中计算Cookie大小
3
A
回答
0
strlen($_COOKIE['cookie_name'])
?
4
这是怎么回事?
setcookie("user", "Dino babu kannampuzha", time() + 3600);
if (isset($_COOKIE["user"])) {
$data = $_COOKIE["user"];
$serialized_data = serialize($data);
$size = strlen($serialized_data);
echo 'Length : ' . strlen($data);
echo "<br/>";
echo 'Size : ' . ($size * 8/1024) . ' Kb';
}
//输出
Length : 21
Size : 0.232 Kb
2
要获取原始的饼干,其长度:
$rawCookies = isset($_SERVER['HTTP_COOKIE']) ? $_SERVER['HTTP_COOKIE'] : null;
$rawLength = strlen($rawCookies);
echo $rawLength;
0
不知道这是否是你想要的,但你可以试试这个
$start_memory = memory_get_usage();
$cookie = $_COOKIE['YourCookie'];
echo memory_get_usage() - $start_memory-PHP_INT_SIZE * 8;
<?php
setcookie("TestCookie", '10');
$start = memory_get_usage();
$cookie = $_COOKIE['TestCookie'];
echo memory_get_usage() - $start; //116 bytes
?>
0
请参考以下资源:
http://extraconversion.com/data-storage/characters/characters-to-bytes.html
Measure string size in Bytes in php
https://mothereff.in/byte-counter
我用我的代码@Dino但改变的东西,如strlen
到mb_strlen
为支持Unicode。
它变成:
$data = $_COOKIE['user'];
$name = 'user';
if (!is_scalar($data)) {
$data = serialize($data);
}
$size = mb_strlen($data)+mb_strlen($name);
echo 'Cookie name length : ' . mb_strlen($name) . "<br>\n";
echo 'Cookie content length : ' . mb_strlen($data) . "<br>\n";
echo 'Cookie size : ~' . ($size) . ' Bytes<br>'."\n";
这几乎是接近尺寸出现在Firebug。我真的不明白为什么大小必须为(n*8/1024)
,如果我们从上面的资源引用只有1个字符1字节除了unicode,所以我必须使用mb_strlen
而不是strlen
。
相关问题
- 1. PHP GD计算大小
- 2. php计算时间段大小
- 3. Appwidget大小计算
- 4. C++计算大小
- 5. 小时计算在php
- 6. 在PostgreSQL中计算文件大小
- 7. 在LESS中计算/检测大小
- 8. 在php中以百分比计算图像大小
- 9. 如何在C中计算您的计算机的字大小?
- 10. 在Qtablewidget中计算小计
- 11. 计算文本大小
- 12. 计算硬盘大小
- 13. 计算数组的大小
- 14. 视频大小计算
- 15. 计算数组大小
- 16. 计算元组的大小
- 17. AMR帧大小计算
- 18. 计算数组的大小
- 19. 位图行大小计算
- 20. 计算字体大小
- 21. 计算目录大小
- 22. 计算阵列的大小
- 23. 数据库大小计算?
- 24. 计算视图大小
- 25. 计算android屏幕大小?
- 26. 计算字体大小
- 27. 计算firebase消息大小
- 28. 放大和缩小计算
- 29. 计算的iOS SDK大小
- 30. 计算内容的大小
每个cookie 4千字节,其中名称和OPAQUE_STRING组合形成4千字节限制。 –
你是什么意思的长度...?是它的大小..? – alwaysLearn
@dreamCoder:是的,这是大小 – blackhole