ホームページ >バックエンド開発 >PHPチュートリアル >PHPのシリアル化と逆シリアル化の詳細な説明
いわゆるシリアル化とは、変数のデータを文字列に変換することです(ただし、型変換とは異なります)。目的は、この文字列を (テキスト ファイルとして) 保存し、他の環境で実行するときに逆シリアル化して復元できるようにすることです。 (通常、データを保存する必要がある場合に使用されます)
Serialization:
$str=serialize ($variable) //データを文字列に変換し、変数 $str に保存します。
file_put_conetents("テキスト ファイル パス",$str);//ファイルをテキスト ファイルに保存します。
逆シリアル化:
$str=file_get_contents("テキスト ファイル パス");//ファイルに保存されているシリアル化された情報を取得します。
$value=unserialize($str); //取得した文字列の内容を通常のデータに変換し、$value に格納します。
シリアル化および逆シリアル化中のマジックメソッド:
__sleep(): 特定のクラスのオブジェクトをシリアル化するときに、クラス内の __sleep() メソッドが自動的に呼び出されます
このメソッドを使用すると、必要なデータを選択できます。シリアル化するには、必要な属性を選択し、配列に格納します。終了後に配列が返され、配列内の値がシリアル化する必要があります。
__wakeup(): __sleep() の逆で、逆シリアル化中に呼び出される場合、いくつかの便利な操作を実行して、状態をシリアル化前の状態に戻すことができます (データベース接続など)。シリアル化は必要な属性を文字列に変更して保存するだけであり、逆シリアル化は文字列をデータに戻すだけですが、一部の状態はこの時点で __wakeup() を使用して操作を実行できます。以前とまったく同じ状態に戻ります。
関連する推奨事項:
PHPのシリアル化と逆シリアル化の方法の詳細な説明、PHPのシリアル化逆シリアル化の詳細な説明_PHPチュートリアル
以上がPHPのシリアル化と逆シリアル化の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。