ThinkPHP は優(yōu)れた PHP 開発フレームワークであり、開発者に広く愛されています。開発プロセスでは多くのクラスを作成することがよくありますが、現(xiàn)在のクラスで別のクラスのメソッドや屬性を使用する必要がある場合、どうすればよいでしょうか?この記事では、ThinkPHP で別クラスのメソッドを呼び出す方法を紹介します。
1. クラスのインポート
別のクラスのメソッドを使用するには、最初のステップはもちろん、そのクラスを現(xiàn)在のクラスに導(dǎo)入することです。 ThinkPHP では、import
関數(shù)を使用してこれを?qū)g現(xiàn)できます。
import('命名空間.類名');
このうち、namespace
と class name
がそれぞれインポートされたクラスです。 . 名前空間とクラス名。インポートされたクラスがどの名前空間にもない場合は、クラス名を import
関數(shù)に直接渡すだけです。
たとえば、クラス OtherClass
があり、これにはメソッド test
が含まれています。このメソッドを現(xiàn)在のクラスで使用したい場合は、次のように記述できます。これ:
import('app\MyClass\OtherClass'); class?MyClass?{ ????public?function?test()?{ ????????$other?=?new?OtherClass(); ????????$other->test(); ????} }
このようにして、MyClass
の OtherClass
で test
メソッドを使用できます。
2. クラスのインスタンス化
クラスをインポートした後、クラスのメソッドとプロパティを使用するために、new
キーワードを使用してクラスをインスタンス化する必要もあります。クラス。通常、インポートされたクラスは現(xiàn)在のクラスのコンストラクターでインスタンス化されます。例:
import('app\MyClass\OtherClass'); class?MyClass?{ ????private?$other; ????public?function?__construct()?{ ????????$this->other?=?new?OtherClass(); ????} ????public?function?test()?{ ????????$this->other->test(); ????} }
コンストラクターで OtherClass
をインスタンス化し、それを MyClass
のプライベート プロパティ $other
に割り當(dāng)てます。次に、test
メソッドで、$other
オブジェクトの test
メソッドを呼び出すことができます。
3. メソッドの呼び出し
インポートされたクラスをインスタンス化した後、クラス內(nèi)のメソッドを使用できるようになります。メソッドを呼び出す前に、現(xiàn)在のクラスとインポートされたクラスの関係を理解する必要があります。
- 親子関係
現(xiàn)在のクラスがインポートされたクラスのサブクラスである場合、parent
キーワードを直接使用して、インポートされたクラスのメソッド。例:
import('app\MyClass\OtherClass'); class?MyClass?extends?OtherClass?{ ????public?function?test()?{ ????????parent::test(); ????} }
MyClass
では、OtherClass
を継承し、test
メソッドをオーバーライドしますが、## も使用したいと考えています。 #OtherClass の ##test
メソッドは、parent::test()
を使用して呼び出すことができます。
- 現(xiàn)在のクラスとインポートされたクラスが親子関係ではなく、協(xié)力関係にある場合、オブジェクトをインスタンス化することでクラスを呼び出すことができます。インポートされたクラス Methods の。例:
import('app\MyClass\OtherClass'); class?MyClass?{ ????private?$other; ????public?function?__construct()?{ ????????$this->other?=?new?OtherClass(); ????} ????public?function?test()?{ ????????$this->other->test(); ????} }
この例では、
MyClass と OtherClass
の間に継承関係はありません。$other
オブジェクトをインスタンス化します。 OtherClass
の test
メソッド。 概要
上記は、ThinkPHP で別のクラスのメソッドを呼び出す方法です。親子関係でも協(xié)力関係でも、使用するクラスを
import 関數(shù)でインポートし、インスタンス化後にそのメソッドを呼び出すことができます。頻繁に呼び出す必要があるクラスやメソッドについては、ThinkPHP のグローバル ファイルに定數(shù)や関數(shù)を定義して、プロジェクト內(nèi)のどこからでも簡単に呼び出すことができます。
以上がthinkphpで別のクラスのメソッドを呼び出す方法の詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國語 Web サイトの他の関連記事を參照してください。

ホットAIツール

Undress AI Tool
脫衣畫像を無料で

Undresser.AI Undress
リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover
寫真から衣服を削除するオンライン AI ツール。

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中國語版
中國語版、とても使いやすい

ゼンドスタジオ 13.0.1
強(qiáng)力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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