facebook twitter hatena line email

「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);