facebook twitter hatena line email

「Php/composer/msgpack」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(ページの作成:「==msgpackインストール== composer require rybakit/msgpack mspackは色々あるが、今回はrybakitのものをインストール 参考:https://blog.e2info.c...」)
 
(hexData表示サンプル)
 
(同じ利用者による、間の4版が非表示)
行11: 行11:
 
require_once __DIR__ . '/vendor/autoload.php';
 
require_once __DIR__ . '/vendor/autoload.php';
 
use MessagePack\MessagePack;
 
use MessagePack\MessagePack;
 
 
$user = [
 
$user = [
 
         'name' => "taro",
 
         'name' => "taro",
 
         'age' => 20
 
         'age' => 20
 
];
 
];
 
 
$packed = MessagePack::pack($user);
 
$packed = MessagePack::pack($user);
 
echo print_r($packed, 1);
 
echo print_r($packed, 1);
 +
$user = MessagePack::unpack($packed);
 +
echo print_r($user, 1);
 +
</pre>
 +
 +
出力
 +
<pre>
 +
��name�taro�age
 +
</pre>
 +
 +
<pre>
 +
Array
 +
(
 +
    [name] => taro
 +
    [age] => 20
 +
)
 +
</pre>
 +
==hexData表示サンプル==
 +
<pre>
 +
// 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);
 
</pre>
 
</pre>

2025年6月13日 (金) 19:23時点における最新版

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