ホームページ  >  記事  >  バックエンド開発  >  セクション 5 -- Clone_PHP チュートリアル

セクション 5 -- Clone_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 16:00:58750ブラウズ

/*
+---------------------------------------------- -- ----------------------------------+
| = この記事は Haohappy<> ; = 章のクラスとオブジェクトのメモ
| = 不必要なトラブルを避けるため、転載はご遠慮ください
|すべての PHP 愛好家が一緒に進歩することを願っています
| = PHP5 Research Center: http://blog.csdn.net/haohappy2004
+--------- ------ -------------------------------------------- ------ ---+
*/

セクション 5--Clone

PHP5 のオブジェクト モデルは参照によってオブジェクトを呼び出しますが、場合によってはオブジェクトのコピーを作成し、それが次のように変更されることを期待することがあります。元のオブジェクトはコピーに影響しません。この目的のために、PHP は __clone と呼ばれる特別なメソッドを定義します。__construct や __destruct と同様に、先頭に 2 つのアンダースコアがあります

デフォルトでは、__clone メソッドを使用すると、同じ名前の新しいオブジェクトが作成されます。プロパティとメソッドのオブジェクト。クローン作成時にデフォルトのコンテンツを変更する必要があります。

クローンされたメソッドにはパラメータを含めることはできません。そしてそのポインタ (コピーされるオブジェクトを指す) を選択した場合、オブジェクトに含める情報を注意してコピーする必要があります (__clone を使用してコピーする場合)。暗黙的なコピーは実行しません。

次に、シリアル番号を使用してオブジェクトを自動化する例を示します:



コードをコピーします コードは次のとおりです: class ObjectTracker //オブジェクト トラッカー
{private static nextserial = 0;名前属性の値を取得 - &gt; name);} 'offert($ ot&gt; getid()。 ""。$ ot&gt; getname()。 ;

//出力: Zeev のオブジェクトの 2 つのクローン
print($ot2->getId() . " " . $ot2->getName() . "
"
;

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/316953.html技術記事 /* +---------------------------------------------- --- ---------------------------------+ |=この記事は、CorePHP プログラミングの ClassesandObjects の章からの Haohappy のメモです。 |=|= メイン + 個人的な翻訳...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。