3

サーバー側でphpを使用してCookieを読み取り、その長さを計算したかったのですが、そうするための直接的な方法が見つかりません。では、このタスクを達成する方法は?

4

5 に答える 5

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
于 2013-04-01T09:08:14.657 に答える
2

生の Cookie とその長さを取得するには:

$rawCookies = isset($_SERVER['HTTP_COOKIE']) ? $_SERVER['HTTP_COOKIE'] : null;
$rawLength  = strlen($rawCookies);
echo $rawLength;
于 2013-04-01T09:17:08.063 に答える
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   
  ?>
于 2013-04-01T09:18:24.290 に答える