検索
ホームページ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ヘンタイを無料で生成します。

ホットツール

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

PhpStorm Mac バージョン

PhpStorm Mac バージョン

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

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境