ホームページ バックエンド開発 PHPチュートリアル PHP5_PHP チュートリアルの this、self、parent キーワードの詳細な説明

PHP5_PHP チュートリアルの this、self、parent キーワードの詳細な説明

Jul 13, 2016 pm 05:33 PM
parent php php5 self this 主流 キーワード そして 開発する 詳しい説明 言語

php(現在の主流の開発言語として)5は、オブジェクト指向言語のほとんどの機能を備えた言語です。php(現在の主流の開発言語として)4よりも多くのオブジェクト指向の機能を備えています。 、少しわかりにくい概念もあるので、説明が苦手な方はご容赦ください(この記事を読むには、PHP(として)のオブジェクト指向の知識が必要です。現在主流の開発言語)5 )

まずは上記の3つのキーワードを理解しましょう: this、self、parent 文字通りに理解しやすいのは、this、self、father、ははは、もっと楽しいです、確立しましょう最初にいくつかの概念を説明します。これらの 3 つのキーワードはどこで使用されますか? 予備的な説明をしましょう。これは現在のオブジェクトへのポインターです (C のポインターを使用して見てみましょう)。self は現在のクラスへのポインターです。 parent は親クラスへのポインタです。これを表現するのにこれ以上適した言語はないので、私たちはよくポインタを使います。笑、私は中国語をよく勉強していませんでした。 -_-#

まだよくわからないので、実例をもとにお話していきます。


(1) this

1 (現在の主流の開発言語として)
2
3 class UserName
4 {
5 //属性を定義する
6 private $name;
7
8 / /コンストラクターを定義します
9 function __construct( $name )
10 {
11 $this->name = $name //このポインターはここで使用されています
12 }
13
14 //デストラクター
15 function __destruct( ){}
16
17 //ユーザー名メンバー関数を出力します
18 function printName()
19 {
20 print( $this->name ) //このポインターを再度使用します
21 }
22 }
23
24 //オブジェクトをインスタンス化します
25 $nameObject = new UserName( "heiyeluren" );
26
27 //印刷を実行します
28 $nameObject->printName() //出力: heiyeluren
29
30 //秒オブジェクトのインスタンス化
31 $nameObject2 = new UserName( "php(現在の主流の開発言語)5" );
32
33 //印刷を実行
34 $nameObject2->printName (); : php(現在の主流の開発言語として)5
35?>

上記のクラスがそれぞれ 11 行目と 20 行目でこのポインターを使用していることがわかりますが、これは誰を指しているのでしょうか?実際、これはオブジェクトをインスタンス化するときに誰を指すかを決定します。たとえば、オブジェクトが初めてインスタンス化されるとき (25 行目)、this は $nameObject オブジェクトを指します。その後、18 行目で print( $this. ->name ) になると、当然 "heiyeluren" が出力されます。 2 番目のインスタンスでは、 print( $this->name ) が print( $nameObject2->name ) になるため、「php(現在の主流の開発言語として)5」が出力されます。したがって、これは現在のオブジェクト インスタンスへのポインターであり、他のオブジェクトやクラスを指すものではありません。

(2)self

まず第一に、self がクラス自体を指していること、つまり self はインスタンス化されたオブジェクトを指していないことを明確にする必要があります。一般に、self は静的変数を指すために使用されます。クラスで。

1 (現在の主流の開発言語として)
2
3 class Counter
4 {
5 //静的変数を含む属性を定義します
6 private static $firstCount = 0;
7 private $ lastcount;
8
9コンストラクター機能使用::(フィールド操作記号)
13

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/508642.html技術記事 PHP (現在の主流の開発言語) 5 は、オブジェクト指向言語のほとんどの機能を備えた言語です。PHP (現在の主流の開発言語) 4 よりも多くのオブジェクト指向機能を備えています。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP データベースの操作 CakePHP データベースの操作 Sep 10, 2024 pm 05:25 PM

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

Cakephp4 で日付と時刻を操作するには、利用可能な FrozenTime クラスを利用します。

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP バリデータの作成 CakePHP バリデータの作成 Sep 10, 2024 pm 05:26 PM

Validator は、コントローラーに次の 2 行を追加することで作成できます。

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

CakePHP のロギング CakePHP のロギング Sep 10, 2024 pm 05:26 PM

CakePHP へのログインは非常に簡単な作業です。使用する関数は 1 つだけです。 cronjob などのバックグラウンド プロセスのエラー、例外、ユーザー アクティビティ、ユーザーが実行したアクションをログに記録できます。 CakePHP でのデータのログ記録は簡単です。 log()関数が提供されています

See all articles