検索
ホームページphp教程php手册セクション 13 オブジェクトのシリアル化 [13]

セクション 13 オブジェクトのシリアル化 [13]

Jun 13, 2016 pm 12:45 PM
bytes変数できる存在する物体意思バンドルデータ変化継続的な


シリアル化により、オブジェクトを含む変数を連続バイト データに変換できます。シリアル化された変数をファイルに保存したり、ネットワーク経由で送信したりして、オブジェクトを逆シリアル化する前に定義されたクラスを逆シリアル化して元のデータに戻すことができます。 , PHP は、オブジェクトのプロパティとメソッドを正常に保存できます。そのような目的で、オブジェクトをシリアル化解除した直後に実行する必要がある場合があります。

オブジェクトがシリアル化されるとき。オブジェクトを逆シリアル化した後、PHP は __sleep メソッドを呼び出します。両方のメソッドは、シリアル化する必要があるプロパティを含む配列を返す必要があります。 __sleep メソッドを使用しない場合、PHP はすべてのプロパティを保存します。例 6.16 は、__sleep メソッドと __wakeup メソッドを使用してオブジェクトをシリアル化する方法を示しています。 __sleep メソッドは、ユーザー オブジェクトを逆シリアル化するときに、id 属性が確実に含まれないようにします。この例は、id 属性の新しい値を確立します。実際の開発では、リソース (画像やデータ ストリームなど) を含むオブジェクトにこれらのメソッドが必要になる場合があります。

リスト 6.16 オブジェクトのシリアル化

クラス ユーザー
{
public $name;
public $id;

function __construct()
{
//giveユーザーに一意の ID を与えると別の ID が与えられます
$this->id = uniqid();

function __sleep()
{
//これをシリアル化しません - >id は id をシリアル化しません
return(array("name"))
}

function __wakeup()
{
//ユーザーに一意の ID を与えます
$this->id = uniqid();
}
}

//create オブジェクトを作成します
$u = new User; name = "Leon";

//serialize id 属性はシリアル化されておらず、id の値は破棄されることに注意してください。
$s =serialize($u); //非シリアル化します 逆シリアル化 ID が再割り当てされます
$u2 = unserialize($s);

//$u と $u2 は異なる ID になります $u と $u2 は異なる ID になります ID
print_r ($u);
print_r($u2)>?

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール