PHPでは、シリアル化と敏aserializationの基本的な目的は、オブジェクトまたは配列を簡単なデータストレージまたはネットワーク伝送のために文字列に変換することであり、その逆も同様です。シリアル化はデータを文字列に変換しますが、脱審数は文字列をオブジェクトや配列などの元のデータ型に変換します。
PHPは、オブジェクトまたは配列を文字列に変換するためのSerialize()関数を提供します。例えば:
$data = [
'name' => 'John Doe',
'age' => 30
];
$serialized_data = serialize($data);
この時点で、 $ serialized_data変数には、シリアル化されたデータを含む文字列が保持されます。
シリアル化された文字列を元のオブジェクトまたは配列に復元するために、PHPはunserialize()関数を提供します。例えば:
$unserialized_data = unserialize($serialized_data);
var_dump($unserialized_data);
これにより、元のデータ構造が出力されます。
array(2) {
'name' => string(8) "John Doe",
'age' => int(30)
}
実際のアプリケーションでは、ユーザーがブラウザまたはスイッチデバイスを閉じた後のデータ損失を回避するためにセッションデータを保存するために、シリアル化と脱登録を使用します。 Serialize()を使用して、データベースにセッションデータを保存できます。
$data = [
'user_id' => 123,
'cart_items' => ['item1', 'item2']
];
$serialized_data = serialize($data);
$_SESSION['saved_data'] = $serialized_data;
次に、 Unserialize()は必要に応じてデータを復元できます。
$serialized_data = $_SESSION['saved_data'];
$data = unserialize($serialized_data);
回復したデータにいつでもアクセスできます。
echo $data['user_id']; // 出力:123
echo $data['cart_items'][0]; // 出力:item1
SerializationとDeserializationを通じて、PHPは強力なデータストレージと送信機能を提供します。これは、セッションデータの保存と回復に特に役立ちます。これらのヒントを習得すると、ウェブサイトのセッションとデータストレージの問題をより効率的に処理できます。