検索
ホームページphp教程php手册セクション 5 クローン作成 [5]

セクション 5 クローン作成 [5]

Jun 13, 2016 pm 12:45 PM
php5クローンコピー物体確立するモデル移行合格


PHP5 のオブジェクト モデルは参照によってオブジェクトを呼び出しますが、オブジェクトのコピーを作成し、元のオブジェクトへの変更がコピーに影響しないようにしたい場合があります。そのために、PHP は _ _clone と呼ばれる特別なメソッドを定義します。 __construct と __destruct、先頭に 2 つのアンダースコアが付きます。

デフォルトでは、__clone メソッドを使用すると、元のオブジェクトと同じプロパティとメソッドを持つオブジェクトが作成されます。デフォルトの内容を変更する場合は、 __clone で (プロパティまたはメソッド) をオーバーライドする必要があります。

clone メソッドにはパラメーターを含めることはできませんが、自分自身のクローンを作成することを選択した場合は、このポインターとそのポインターの両方が含まれます。オブジェクトに含めたい情報を、そこからこれにコピーする場合、PHP は暗黙的なコピーを実行しません。以下に示すシリアル序数の使用例です。オブジェクトを自動化するための数値: class ObjectTracker
{
private static $nextSerial = 0;
private $name; __construct($name) file://constructor
{
$this->name = $name;
$this->id = self::$nextSerial;
function __clone() file://clone
{
$this->name = "$that->name のクローン";
$this->id = self :: $nextSerial;
}

function getId() file://id 属性の値を取得します
{
return($this->id); 🎜>
function getName() file://名前属性の値を取得します
{
return($this->name)
}
}

$ ot = new ObjectTracker("Zeev のオブジェクト");
$ot2 = $ot->__clone();

//出力: 1 Zeev のオブジェクト
print($ot-> ;getId () . " " . $ot->getName() . "
");

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

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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ヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SecLists

SecLists

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

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境