ホームページ >バックエンド開発 >PHPチュートリアル >PHP でシリアル化された文字列を逆シリアル化するにはどうすればよいですか?

PHP でシリアル化された文字列を逆シリアル化するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-02 20:41:12782ブラウズ

How Can I Deserialize a Serialized String in PHP?

シリアル化とアンシリアル化について

次のように表されるシリアル化された文字列が見つかりました。

a:2:{i:0;s:7:"Abogado";i:1;s:7:"Notario";}

この文字列内に格納されている配列を取得するには、unserialize() を使用して逆シリアル化を実行する必要があります。 function:

$str = 'a:2:{i:0;s:7:"Abogado";i:1;s:7:"Notario";}';
print_r(unserialize($str));

この操作により次の出力が生成されます:

Array ( [0] => Abogado [1] => Notario )

マニュアルのメモ:

  • シリアル化を解除するので注意してください() は、エラーと FALSE 値の逆シリアル化の両方に対して FALSE を返します。これに対処するには、str を Serialize(false) と比較するか、発行された E_NOTICE をキャッチします。
  • ユーザー指定の入力を unserialize() に渡すときは注意してください。これにより、悪意のあるコードが実行される可能性があります。 JSON (json_decode() および json_encode()) のような安全なデータ交換形式の採用を検討してください。

以上がPHP でシリアル化された文字列を逆シリアル化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。