PHP クラスで動的メソッドと静的メソッドを呼び出す方法について混乱しています。モデレーターにアドバイスをいただければ幸いです。
PHP クラスで動的メソッドと静的メソッドを呼び出す方法に疑問があります。モデレーターにアドバイスをいただければ幸いです
<?php<br />//error_reporting(0);<br />class A<br />{<br /> public $db='OK';<br /> private static $_instance;<br /> public static function getInstance()<br /> {<br /> if(!(self::$_instance instanceof self)){<br /> self::$_instance = new self;<br /> }<br /> return self::$_instance;<br /> }<br /> //维持find方法中this指针的写法不变<br /> public function find()<br /> {<br /> echo $this->db;<br /> }<br />}<br />class B extends A<br />{<br /> static function ex()<br /> {<br /> self::getInstance()->find(); <br /> }<br />}<br />$b=new B();<br />$b->find();<br />echo "<br>";<br />//第二种方法<br />B::ex();<br />?>
先ほどのモデレーターの説明に従って、少し修正して現在のものを実現しました。
まず、クラス A の find メソッドを、 $this ポインターを使用する代わりに使用したいと思います。 self
以下の 2 つのメソッドと同様です。 メソッドの呼び出し
最初の型は、find メソッドを動的に呼び出します。明らかに、出力は問題ありません。
2 番目の型 B は、最初に静的メソッドを呼び出して戻り値を返す静的クラスです。 「静的インスタンス化オブジェクト」?
次に、find メソッドを呼び出します。$this ポインタが変更されたかどうかはわかりません。
私が書いた目的は、外部コードがクラス A のメソッドを動的に呼び出すか静的に呼び出せるようにすることです。
ちょっと混乱していて混乱しています。
モデレータは動作原理を理解できますか?
------解決策------
あなたは $b=new B();以下の文
$b->db = 2;
を見ると、これは 1 つのクラスですが、2 つのシステムが含まれています

TooptimizePHPcodeforreducedmemoryusageandexecutiontime,followthesesteps:1)Usereferencesinsteadofcopyinglargedatastructurestoreducememoryconsumption.2)LeveragePHP'sbuilt-infunctionslikearray_mapforfasterexecution.3)Implementcachingmechanisms,suchasAPC

PhpisusedForsedingEmailsDueToitsIttegration withServerMailServicesAndExternalSmtpproviders、自動化とMarketingCampaign.1)SetupYourphpenvironment withebeBironment witheBiserverandphp、保証

メールを送信する最良の方法は、PHPMailerライブラリを使用することです。 1)Mail()関数を使用することはシンプルですが信頼できないため、電子メールがスパムを入力するか、配信できない場合があります。 2)PHPMailerは、より良い制御と信頼性を提供し、HTMLメール、添付ファイル、SMTP認証をサポートします。 3)SMTP設定が正しく構成されていることを確認し、暗号化(StartTLSやSSL/TLSなど)を使用してセキュリティを強化します。 4)大量の電子メールについては、メールキューシステムを使用してパフォーマンスを最適化することを検討してください。

customedersandaddadvancedfeaturesinphpemailentalitylivainability.1)customederadddetadata fortrackingandcategorization.2)htmLemailsallowStingtintintintintintinteractivity.3)添付物質の添付物質の添付

PHPとSMTPを使用してメールを送信することは、PHPMailerライブラリを介して実現できます。 1)PHPMailerをインストールして構成する、2)SMTPサーバーの詳細を設定する、3)電子メールコンテンツを定義し、4)メールを送信してエラーを処理します。この方法を使用して、電子メールの信頼性とセキュリティを確保します。

BestappRoachforseminginphpisusingthephpmailerlibrarydueToitsReliability、featurrichness、andeaseofuse.phpmailerSupportssmtpは、detairederorhandlingを提供します

依存関係注射(DI)を使用する理由は、コードのゆるい結合、テスト可能性、および保守性を促進するためです。 1)コンストラクターを使用して依存関係を注入します。2)サービスロケーターの使用を避け、3)依存関係噴射コンテナを使用して依存関係を管理する、4)依存関係を注入することでテスト可能性を向上させる、5)注入依存性を回避、6)パフォーマンスに対するDIの影響を考慮します。

phpperformancetuningisucial cuseenhancess andandandadsand。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター
