「Php/composer/msgpack」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→サンプル) |
|||
行33: | 行33: | ||
) | ) | ||
</pre> | </pre> | ||
+ | ==hexData表示サンプル== | ||
+ | // 1. MessagePackでpack | ||
+ | $packed = MessagePack::pack($user); | ||
+ | |||
+ | // 2. バイナリデータを16進数文字列に変換 | ||
+ | $hexData = bin2hex($packed); | ||
+ | |||
+ | echo "Packed hex data: " . $hexData . "\n"; | ||
+ | |||
+ | // 3. 16進数文字列から元のデータに戻す | ||
+ | $binaryData = hex2bin($hexData); | ||
+ | $unpacked = MessagePack::unpack($binaryData); |
2025年6月13日 (金) 19:22時点における版
msgpackインストール
composer require rybakit/msgpack
mspackは色々あるが、今回はrybakitのものをインストール
参考:https://blog.e2info.co.jp/2018/08/20/php_messagepack/
サンプル
<?php require_once __DIR__ . '/vendor/autoload.php'; use MessagePack\MessagePack; $user = [ 'name' => "taro", 'age' => 20 ]; $packed = MessagePack::pack($user); echo print_r($packed, 1); $user = MessagePack::unpack($packed); echo print_r($user, 1);
出力
��name�taro�age
Array ( [name] => taro [age] => 20 )
hexData表示サンプル
// 1. MessagePackでpack $packed = MessagePack::pack($user);
// 2. バイナリデータを16進数文字列に変換 $hexData = bin2hex($packed);
echo "Packed hex data: " . $hexData . "\n";
// 3. 16進数文字列から元のデータに戻す $binaryData = hex2bin($hexData); $unpacked = MessagePack::unpack($binaryData);