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

PHPのコンストラクターにクラス名の代わりに__construct()を使用することに利点はありますか?


はい、クラス名の代わりにマジック関数__construct()を使用することにはいくつかの利点があります。それらは以下にリストされています-

  • 魔法の関数__constructはPHP5.4で導入されました。コンストラクターとしてClassName()よりも__construct()を使用する利点の1つは、クラスの名前を変更した場合に、DRY(繰り返さないでください)の概念をサポートするコンストラクターを更新する必要がないことです。
  • 子クラスがある場合は、parent ::__construct()を呼び出して、簡単な方法で親コンストラクターを呼び出すことができます。

<?php
   class myclass{
      public function __construct(){
         echo 'The class "', __CLASS__, '" was initiated!'."\n";
      }
   }
   class childclass extends myclass{
      public function __construct() {
         parent::__construct();
         print "In SubClass constructor ";
      }
   }
   $myobj = new childclass();
?>

出力

The class "myclass" was initiated!
In SubClass constructor

「__CLASS__」はいわゆるマジック定数であり、この場合、呼び出されたクラスの名前を返します。

古いスタイルのコンストラクターはPHP7.0で非推奨になり、将来のバージョンで削除される予定です。新しいコードでは常に__construct()を使用する必要があります。


  1. PHPでimgesetthickness()関数を使用して線画の画像の太さを設定するにはどうすればよいですか?

    imagesetthickness() は、線画の太さを設定するために使用されるPHPの組み込み関数です。 構文 bool imagesetthickness($image, $thickness) パラメータ imagesetthickness() $imageと$thicknessの2つのパラメータを受け入れます。 $ image −このパラメータは、imagecreatetruecolor()などの画像作成関数によって返されます。画像のサイズを作成するために使用されます。 $ thickness −このパラメータは、厚さをピクセル単位で設定します。 戻り値

  2. PHPでimagesetstyle()関数を使用して線画のスタイルを設定するにはどうすればよいですか?

    imagesetstyle() 線画のスタイルを設定するために使用されるPHPの組み込み関数です。 imagepolygonなどのすべての線画関数で使用できます またはimageline 。 構文 bool imagesetstyle(resource $image, array $style) パラメータ imagesetstyle() 2つのパラメータを取ります: $ image および$style 。 $ image −作業する画像リソースを指定します。 $ style −ピクセルカラーの配列を指定します。 戻り値 imagesetstyle() 成