PHPのクラス
クラスの概念について詳しく説明する前に、まずオブジェクト指向プログラミングの概念について説明します。オブジェクト指向プログラミング (OOP) は、現実世界の環境をより適切にシミュレートする機能を備えたソフトウェアの再利用可能なコードの作成に基づいており、それによって認識されます。トップダウンプログラミングの勝者として。プログラムに拡張ステートメントを追加することで、関数をプログラミングに必要な「オブジェクト」に「カプセル化」します。オブジェクト指向プログラミング言語により、複雑な作業が明確になり、簡単に記述できるようになります。これは、オブジェクトそのものではなく、仕事を処理する能力における革命です。オブジェクトは従来のプログラミングやプログラミング手法と互換性がなく、部分的にオブジェクト指向であることが状況をさらに悪化させます。開発環境全体がオブジェクト指向でない限り、オブジェクトの利点はそれほど問題にならない可能性があります。 PHP は真のオブジェクト指向プログラミング言語ではないという人もいるかもしれません。PHP はオブジェクト指向プログラミングまたは従来の手続き型プログラミングを使用できます。ただし、大規模なプロジェクトの開発では、PHP の純粋なオブジェクト指向プログラミングを使用してクラスを宣言し、プロジェクト開発ではオブジェクトとクラスのみを使用することができます。プロジェクトが大きくなるにつれて、オブジェクト指向プログラミング コードを使用すると役立つ場合があります。オブジェクト指向プログラミング コードは、ソフトウェア エンジニアリングの基本であり、保守が容易で、理解しやすく、再利用しやすいものです。これらの概念を Web ベースのプロジェクトに適用することが、将来の Web サイトの成功の鍵となります。
オブジェクトは、問題ドメインまたは実装ドメイン内の何かを抽象化したもので、そのオブジェクトが保存する必要がある情報と、それがシステム内で果たす役割を反映します。属性と権限のセットです。これらを制御するのは、プロパティが動作する一連のサービスのカプセル化です。 オブジェクトは 2 つの側面から理解される必要があります。1 つは、システムが処理する必要がある現実世界のオブジェクトを指し、もう 1 つは、コンピューターが直接処理しないが、対応するコンピューター表現を処理するオブジェクトです。このコンピュータ表現はオブジェクトとも呼ばれます。簡単に言えば、人は物であり、定規も物であると言えます。これらのオブジェクトをデータで直接表すことができる場合、それらを属性と呼びます。定規の測定単位は、センチメートル、メートル、またはフィートです。この測定単位は定規の属性です。
PHP では、クラスを定義できます。クラスとは、変数のコレクションと、これらの変数を使用するいくつかの関数を指します。 PHP は型付けが緩い言語であるため、型によるオーバーロードや、異なる数のパラメータによるオーバーロードは機能しません。 場合によっては、さまざまな方法 (さまざまな数の引数を渡す) でオブジェクトを作成できるように、ある方向でコンストラクターをオーバーロードするとよいことがあります。 PHP では、これはクラスを通じて実現されます。
PHP では、情報のカプセル化はクラスを通じて完了します。PHP でクラスを定義するための構文は次のとおりです。
class Class_name // オブジェクト指向プログラミング クラスでは、クラスの最初の文字が使用されるのが一般的です。大文字にする必要があり、変数の命名規則に従う必要があります。
{
//関数と変数のコレクション
}
?>
クラスを定義する場合、次の形式で定義できます。ただし、開発をより効率的に行うために、標準を維持することが最善です。
データ メンバーは、クラス内で「var」宣言を使用して定義されます。値が割り当てられる前は、データ メンバーには型がありません。データ メンバーは、整数、配列、関連配列 (連想配列)、またはオブジェクトにすることができます。
次に、クラス定義の実際の例を示します。
class Student
{
var $str_Name; //Name
var $str_Sex; //Gender
var $int_Id ; //生徒番号
var $int_English; //英語のスコア
}
?>これは非常に一般的です。定義クラス 簡単な例を使用して、学生の学業成績を表示します。クラス名は Student です。このクラスには、名前、性別、学生番号、英語のスコア、数学のスコアなどの学生の基本属性が含まれます。
関数は、クラスで定義された関数と呼ばれます。関数内のクラス メンバー変数にアクセスする場合は、$this->var_name を使用する必要があります。それ以外の場合は、var_name がクラスで宣言された変数を参照します。 、ローカル変数のみにすることができます。まず、Input() 関数を定義して、インスタンス内のオブジェクトに初期値を割り当てます。
function Input ($Name, $Sex, $Id, $Englis, $Maths)
{
$this ->str_Name=$Name;
$this->str_Sex =$Sex;
$this->int_Englis=$English; this->int_Maths=$Maths;
}
次に、生徒の基本情報を出力するために「ShowInfo()」という関数を定義します。 ) //ShowInfo() 関数を定義します
{
echo ("名前: $this->str_Name
")
echo ("性別: $this->str_Sex
");
echo (“学生ID: $this->int_Id
”);
echo (“英語のスコア: $this->int_English
”);
echo ( "数学スコア: $this->int_Maths
");
}
定義されたクラスは、オブジェクトを生成するために新しいキーワードを使用する必要があります:
$A_student=new Student ;
たとえば、$Wing という名前のオブジェクトのインスタンスを作成して値を割り当てる場合は、次のコードを使用できます。
$Wing =new Student; // new キーワードを使用してオブジェクトを生成します。
$Wing ->Input ("Wing"," Male",33,95,87);
//Wing の名前、性別、学生番号を入力します。英語のスコアと数学のスコアの場合、名前と性別は文字変数であるため二重引用符が必要ですが、他の数値変数では二重引用符は必要ありません。
以下の完全なソース コードを見ると、PHP でクラスがどのように使用されているかが明確にわかります。
class Student
{
var $str_Name ;
var $int_Id;
var $int_English;
関数入力 ( $Name, $Sex, $Id, $English, $Maths)
🎜>$this->str_Name=$Name;
$this->str_Sex =$Sex;
$this->int_English=$English ;
$this->int_Maths=$Maths; str_Name
")
echo ("性別: $this->
"); echo (“学生ID: $this->int_Id
”);
echo (“英語のスコア: $this->int_English
”); “数学のスコア: $this->int_Maths
");
}
}
$Wing = 新入生;
$Wing->;入力 ("翼","男性",33,95, 87);
$Paladin = 新入生;
$Paladin->Input ("パラディン","女性",38,58,59.5) ;
$Wing->ShowInfo();
?> 実行結果は次のようになります。 >名前:ウイング
性別:男性
学籍番号:33
英語の点:95
数学の点:87
名前:パラディン
性別:女
学籍番号:38
英語のスコア: 58
数学のスコア: 59.5
PHP の既存のバージョンは、以前のバージョンと比較してオブジェクト指向プログラミングのサポートを大幅に改善しましたが、サポートはまだ完全ではありません。現段階では、PHP はオブジェクト指向プログラミング言語のサポートを提供するだけでなく、プログラムの構造を設計するのに役立ち、またプログラムのメンテナンスにも役立ちます。
全文: cngnu