ホームページ バックエンド開発 PHPチュートリアル Zendエンジンの開発_PHPチュートリアル

Zendエンジンの開発_PHPチュートリアル

Jul 13, 2016 am 10:53 AM
zend 開発する 物体 持ってくる エンジン 言及された やっと モデル 話し合う

この章の最後のセクションで、Zeev は Zend エンジンによってもたらされたオブジェクト モデルについて説明し、それが PHP の以前のバージョンのモデルとどのように異なるかについて言及しています。 1997 年の夏に PHP3 を開発したとき、その時点では PHP3 は純粋な手続き型言語でした。クラスのサポートは PHP3 アルファ バージョンに追加されました。当時は PHP を研究する人が少なすぎたため、PHP に新しい機能を追加するのに最小限の議論が必要でした。そのため、PHP は 1997 年 8 月からオブジェクトに向けた一歩を踏み出しました。プログラミング言語の第一歩

実際、これは最初のステップにすぎません。この設計には関連するアイデアがほとんどないため、このバージョンでのオブジェクトの使用は、配列にアクセスするための優れた方法に過ぎません。 bar"] では、より見栄えの良い $foo->bar を使用できます。オブジェクト指向アプローチの主な利点は、メンバー関数またはメソッドを通じて機能を保存できることです。典型的なコード ブロックを例 6.18 に示します。しかし、実際にはこれです。例 6.19 のアプローチとあまり変わりません。

リスト 6.18 PHP 3 のオブジェクト指向プログラミング PHP3 のオブジェクト指向プログラミング

<?php
クラスの例
{
var $value = "何らかの値";
関数 PrintValue()
{
$this->value;を印刷します
}
}
$obj = 新しい例();
$obj->PrintValue();
?>
リスト 6.19 PHP 3 構造プログラミング PHP3 PHP3 の構造プログラミング

<?php
関数 PrintValue($arr)
{
print $arr["value"];
}

関数 CreateExample()
{
$arr["値"] = "何らかの値";
$arr["PrintValue"] = "PrintValue";

$arr を返します;
}

$arr = CreateExample();

//PHP の間接参照を使用します
$arr["PrintValue"]($arr);
?>
上記では、クラスに 2 行のコードを記述するか、配列を関数に明示的に渡していますが、PHP3 ではこれら 2 つのオプションに違いがないことを考慮すると、オブジェクト モデルを単に「構文上のホワイトウォッシュ」Access 配列として扱うことができます。 .

オブジェクト指向開発に PHP を使用したいと考えていた人、特にデザイン パターンを使用したいと考えていた人は、幸いなことに、当時 (PHP3 時代) オブジェクト指向に PHP を使用したいと考えていた人は多くはありませんでした。開発

PHP4 ではこの状況が変わり、参照の概念が導入されました。これにより、PHP の異なる識別子がメモリ内の同じアドレスを指すことができるようになります。これは、例 6.20 のように、同じ変数に複数の名前を使用できることを意味します。

リスト 6.20 PHP 4 のリファレンス PHP4 のリファレンス

<?php
$a = 5;

//$b は $a とメモリ内の同じ場所を指します $b と $a はメモリ内の同じアドレスを指します
$b = &$a;

// $a が $b の変更を指しているので、$b を変更します
//同じ場所 - それも変わります $a が指すアドレスも変わります
$b = 7;

//印刷 7 出力 7
$a を印刷します;

http://www.bkjia.com/PHPjc/632447.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/632447.html技術記事この章の最後のセクションで、Zeev は、Zend エンジンによってもたらされたオブジェクト モデルについて説明し、それが 1997 年の夏に PHP3 を開発したとき、以前のバージョンの PHP のモデルとどのように異なるのかに注目しました。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

世界で最も強力なオープンソース MoE モデルが登場。GPT-4 に匹敵する中国語機能を備え、価格は GPT-4-Turbo のわずか 1% 近くです 世界で最も強力なオープンソース MoE モデルが登場。GPT-4 に匹敵する中国語機能を備え、価格は GPT-4-Turbo のわずか 1% 近くです May 07, 2024 pm 04:13 PM

世界で最も強力なオープンソース MoE モデルが登場。GPT-4 に匹敵する中国語機能を備え、価格は GPT-4-Turbo のわずか 1% 近くです

MLP に代わる KAN は、オープンソース プロジェクトによって畳み込みまで拡張されました MLP に代わる KAN は、オープンソース プロジェクトによって畳み込みまで拡張されました Jun 01, 2024 pm 10:03 PM

MLP に代わる KAN は、オープンソース プロジェクトによって畳み込みまで拡張されました

Google は大喜び: JAX のパフォーマンスが Pytorch や TensorFlow を上回りました! GPU 推論トレーニングの最速の選択肢となる可能性があります Google は大喜び: JAX のパフォーマンスが Pytorch や TensorFlow を上回りました! GPU 推論トレーニングの最速の選択肢となる可能性があります Apr 01, 2024 pm 07:46 PM

Google は大喜び: JAX のパフォーマンスが Pytorch や TensorFlow を上回りました! GPU 推論トレーニングの最速の選択肢となる可能性があります

AI が数学研究を破壊する!フィールズ賞受賞者で中国系アメリカ人の数学者が上位 11 件の論文を主導 | テレンス・タオが「いいね!」しました AI が数学研究を破壊する!フィールズ賞受賞者で中国系アメリカ人の数学者が上位 11 件の論文を主導 | テレンス・タオが「いいね!」しました Apr 09, 2024 am 11:52 AM

AI が数学研究を破壊する!フィールズ賞受賞者で中国系アメリカ人の数学者が上位 11 件の論文を主導 | テレンス・タオが「いいね!」しました

こんにちは、電気アトラスです!ボストン・ダイナミクスのロボットが復活、180度の奇妙な動きにマスク氏も恐怖 こんにちは、電気アトラスです!ボストン・ダイナミクスのロボットが復活、180度の奇妙な動きにマスク氏も恐怖 Apr 18, 2024 pm 07:58 PM

こんにちは、電気アトラスです!ボストン・ダイナミクスのロボットが復活、180度の奇妙な動きにマスク氏も恐怖

FisheyeDetNet: 魚眼カメラに基づいた最初のターゲット検出アルゴリズム FisheyeDetNet: 魚眼カメラに基づいた最初のターゲット検出アルゴリズム Apr 26, 2024 am 11:37 AM

FisheyeDetNet: 魚眼カメラに基づいた最初のターゲット検出アルゴリズム

テスラのロボットは工場で働く、マスク氏:手の自由度は今年22に達する! テスラのロボットは工場で働く、マスク氏:手の自由度は今年22に達する! May 06, 2024 pm 04:13 PM

テスラのロボットは工場で働く、マスク氏:手の自由度は今年22に達する!

Yolov10: 詳細な説明、展開、アプリケーションがすべて 1 か所にまとめられています。 Yolov10: 詳細な説明、展開、アプリケーションがすべて 1 か所にまとめられています。 Jun 07, 2024 pm 12:05 PM

Yolov10: 詳細な説明、展開、アプリケーションがすべて 1 か所にまとめられています。

See all articles