検索
ホームページphp教程php手册PHP 5.0 オブジェクト モデルのオブジェクト コピーの詳細な調査

PHP 5.0 オブジェクト モデルのオブジェクト コピーの詳細な調査

Jun 13, 2016 pm 12:29 PM
clonephpそして土地コピー物体意思確立する探検する方法モデル深さ使用デフォルト

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

clone メソッドにはパラメーターを含めることはできませんが、このポインターとあのポインター (コピーされたオブジェクトを指す) の両方が含まれます。自分自身のクローンを作成する場合は、オブジェクトに含める情報を慎重にコピーする必要があります。__clone を使用してコピーする場合、PHP は暗黙的なコピーを実行しません。以下に、シリーズを使用した例を示します。オブジェクトの自動化の例:

コードをコピー コードは次のとおりです:


class ObjectTracker //Object Tracker
{
private static $nextSerial = 0;
private $id;

function __construct($name) // コンストラクター関数
{
$ this-> ;name = $name;
$this->id = self::$nextSerial;

function __clone() // クローン
{
$ this-> ;name = "$this->name のクローン";
$this->id = self::$nextSerial;

function getId() //取得id 属性 Value
{
return($this->id)
}

function getName() // name 属性の値を取得
{
return($this ->name);
}
}

$ot = new ObjectTracker("Zeev's Object");
$ot2 = clone$ot;
// 出力: 1 Zeev のオブジェクト
print($ot->getId() . " " . $ot->getName() . "");

// 出力: 2 Zeev のオブジェクトのクローン
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衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

EditPlus 中国語クラック版

EditPlus 中国語クラック版

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

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境