PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPの依存性注入とは何ですか?


依存性注入は、あるオブジェクトが別のオブジェクトの依存性を提供する手順です。依存性注入は、依存関係のハードコーディングを回避し、実行時とコンパイル時の両方で依存関係を変更できるようにするソフトウェア設計アプローチです。

オブジェクトを注入する方法はたくさんありますが、一般的に知られているカップルがここにあります-

コンストラクタインジェクション

このアプローチでは、クラスコンストラクターを介してオブジェクトを注入できます。

<?php
   class Programmer {
      private $skills;
      public function __construct($skills){
         $this->skills = $skills;
      }
      public function totalSkills(){
         return count($this->skills);
      }
   }
   $createskills = array("PHP", "JQUERY", "AJAX");
   $p = new Programmer($createskills);
   echo $p->totalSkills();
?>

出力

3

セッターインジェクション

セッター関数を使用してオブジェクトをクラスに注入します。

<?php
   class Profile {
      private $language;
      public function setLanguage($language){
         $this->language = $language;
      }
   }
   $profile = new Profile();
   $language = array["Hindi","English","French"];
   $profile->setLanguage($language);
?>

依存性注入の利点

  • 新しい依存関係の追加は、既存のコードに干渉しない新しいsetterメソッドを追加するのと同じくらい簡単です。

  1. PHPファイルとは何ですか?

    拡張子が.PHPのファイルは、ハイパーテキストプリプロセッサコードを含むPHPソースコードファイルです。これらは通常、Webサーバーで実行されているPHPエンジンからHTMLを生成するWebページファイルとして使用されます。 PHPエンジンがコードから作成するHTMLコンテンツは、Webブラウザーに表示されるものです。 WebサーバーはPHPコードが実行される場所であるため、PHPページにアクセスしてもコードにアクセスできませんが、代わりにサーバーが生成するHTMLコンテンツが提供されます。 一部のPHPソースコードファイルは、.PHTML、PHP3、PHP4、PHP5、PHP7、PHP

  2. Rubyのデカップリング:委任と依存性注入

    オブジェクト指向プログラミング 、あるオブジェクトが機能するために別のオブジェクトに依存することがよくあります。 たとえば、財務レポートを実行するための単純なクラスを作成する場合: class FinanceReport def net_income FinanceApi.gross_income - FinanceApi.total_costs end end FinanceReportと言えます 依存 FinanceApi 、外部の支払い処理業者から情報を引き出すために使用します。 しかし、ある時点で別のAPIをヒットしたい場合はどうでしょうか。または、外部リソース