-
PHPクラス定数
はじめに PHPでは、クラス内の識別子を定数値として定義できます。この値は、クラスごとに変更されません。クラスの変数またはプロパティと区別するために、定数の名前の前に$記号を付けず、次のように定義します。 定数 修飾子。 定数のデフォルトの可視性は公開されていますが、他の修飾子が定義で使用される場合があります。定数の値は、変数や関数呼び出し/プロパティではなく、特定の式である必要があります。定数の値は、スコープ解決演算子を使用してクラス名を介してアクセスされます。 自己を介して参照できますが、メソッドの内部 変数 構文 class SomeClass{ const
-
PHPコンストラクタとデストラクタ
はじめに オブジェクト指向プログラミングの用語では、コンストラクターはクラス内で定義されたメソッドであり、オブジェクトの作成時に自動的に呼び出されます。コンストラクターメソッドの目的は、オブジェクトを初期化することです。 PHPでは、特別な名前のメソッド __construct コンストラクターとして機能します。 構文 __construct ([ mixed $args = "" [, $... ]] ) : void コンストラクターの例 この例は、オブジェクトが宣言されたときにコンストラクターが自動的に実行されることを示しています 例 <?php clas
-
PHPの最終キーワード
はじめに 最終を使用する PHPクラスのインスタンスメソッドの定義にあるキーワードは、子クラスによってオーバーライドされないようにします。同様に、finalがクラス自体の定義で使用されている場合、そのようなクラスを拡張することはできません。 構文 final class myclass {} class myclass{ final method mymethod(){} } 最終的な方法の例 次の例では、finalメソッドをオーバーライドしようとするとエラーが発生します 例 <?php class parentclass{ fin
-
PHPオブジェクトの継承
はじめに 継承は、オブジェクト指向プログラミング方法論の重要な原則です。この原則を使用して、2つのクラス間の関係を定義できます。 PHPは、そのオブジェクトモデルで継承をサポートしています。 PHPは拡張を使用します 2つのクラス間の関係を確立するためのキーワード。 構文 class B extends A ここで、Aは基本クラス(親とも呼ばれます)であり、Bはサブクラスまたは子クラスと呼ばれます。子クラスは、親クラスのパブリックメソッドと保護されたメソッドを継承します。子クラスは、継承されたメソッドのいずれかを再定義またはオーバーライドできます。そうでない場合、継承されたメソッドは、子
-
PHPオブジェクトインターフェイス
はじめに インターフェイスはオブジェクト指向プログラミングの重要な機能であり、実装方法を定義しなくても、クラスで実装するメソッドを指定できます。 インターフェースの場合、PHPはインターフェースをサポートします キーワード。インターフェイスはクラスに似ていますが、定義本体のないメソッドがあります。インターフェイスのメソッドはパブリックである必要があります。これらのメソッドを実装する継承クラスは、実装で定義する必要があります extendskeywordの代わりにkeywordであり、親インターフェースのすべてのメソッドの実装を提供する必要があります。 構文 <?php interfa
-
PHPオブジェクトの反復
はじめに PHP 5以降では、オブジェクトのすべての表示可能なアイテムのリストを反復処理することができます。反復はforeachを使用して実行できます ループとイテレータ インターフェース。 IteratorAggregateもあります この目的に使用できるPHPのインターフェース foreachループの使用 例 <?php class myclass{ private $var; protected $var1; public $x, $y, $z; public functio
-
PHPマジックメソッド
はじめに PHPのマジックメソッドは、特定のタスクを実行することを目的とした特別なメソッドです。これらのメソッドは、プレフィックスとして二重アンダースコア(__)を使用して名前が付けられます。これらの関数名はすべて予約されており、関連する魔法の機能以外の目的で使用することはできません。クラスの魔法のメソッドは、パブリックとして宣言する必要があります。これらのメソッドは、特定の条件が満たされたときに自動的に呼び出されるインターセプターとして機能します。 現在、PHPでは次の魔法の方法を利用できます __ sleep public __sleep ( void ) : array クラス
-
PHPのオブジェクトの比較
はじめに PHPには比較演算子があります== これを使用して、2つのobjecs変数の単純なコマリソンを実行できます。両方が同じクラスに属し、対応するプロパティの値が同じである場合、trueを返します。 PHPの=== 演算子は2つのオブジェクト変数を比較し、それらが同じクラスの同じインスタンスを参照している場合にのみtrueを返します オブジェクトとこれらの操作者との比較には、次の2つのクラスを使用します 例 <?php class test1{ private $x; private $y; func
-
PHPオブジェクトとリファレンス
はじめに PHPでは、オブジェクトはデフォルトで参照によって渡されます。ここで、参照はエイリアスであり、2つの異なる変数が同じ値に書き込むことができます。オブジェクト変数には、オブジェクト自体が値として含まれていません。実際のオブジェクトを見つけるために使用できるオブジェクト識別子のみが含まれています。オブジェクトが引数によって送信されるか、返されるか、割り当てられる場合、異なる変数はエイリアスではありません。代わりに、同じオブジェクトを指す識別子のコピーを保持します。 例 PHPにはspl_object_hash()があります オブジェクトの一意のハッシュIDを返す関数。次のコードでは、
-
PHPのオーバーロード
はじめに PHPでは、C ++やJavaなどの他のオブジェクト指向言語と比較して、オーバーロードの解釈が異なります。この用語は、同じ名前のメソッドを持つクラスを複数回持つが、引数や戻り値のタイプが異なるクラスを持つ能力を意味します。一方、PHPでは、プロパティとメソッドを動的に作成する機能は、オーバーロードと呼ばれます。 PHPの魔法のメソッド (二重下線で始まるメソッド名)は、動的プロパティとメソッドを設定するために使用されます。 プロパティのオーバーロードには、次のマジックメソッドが使用されます- 構文 public __set ( string $name , mixed $valu
-
PHPクラスのプロパティ
はじめに クラス内で宣言されたデータメンバーはプロパティと呼ばれます。プロパティは、属性またはフィールドと呼ばれることもあります。 PHPでは、プロパティはアクセス指定子のキーワードの1つである publicで修飾されます。 、プライベート または保護 。プロパティの名前は、PHPで有効な任意のラベルにすることができます。プロパティの値は、クラスのインスタンスごとに異なる場合があります。そのため、インスタンス変数と呼ばれることもあります。 任意のインスタンスメソッド内で、疑似変数 $ thisとして使用可能なオブジェクトのコンテキストを呼び出すことでプロパティにアクセスできます。 。プロパ
-
PHPスコープ解決演算子(::)
はじめに PHPでは、二重コロン :: スコープ解決演算子として定義されています 。これは、クラスレベルで定義された定数、プロパティ、およびメソッドにアクセスする場合に使用されます。クラス定義の外部でこれらの項目を参照する場合、クラスの名前がスコープ解決演算子とともに使用されます。この演算子は、 Paamayim Nekudotayimとも呼ばれます。 、これはヘブライ語で二重コロンを意味します。 構文 <?php class A{ const PI=3.142; static $x=10; } echo A::PI; echo A:
-
PHPオブジェクトのシリアル化
はじめに バイトストリーム形式のオブジェクトの文字列表現は、 serialze()によって取得されます。 PHPで機能します。オブジェクトのすべてのプロパティ変数は文字列に含まれ、メソッドは保存されません。この文字列は任意のファイルに保存できます。 バイトストリームからオブジェクトを取得するために、unserialize()関数があります。 unserialize()を呼び出す前に、対応するクラスの定義が利用可能である必要があります 機能。 例 まず、次のクラスのオブジェクトをシリアル化し、文字列をファイルに保存しましょう。 <?php class test1{ &
-
PHPの静的プロパティとメソッド
はじめに 演算子を使用してそのオブジェクトからアクセスすることはできません。実際、オブジェクトはクラスのインスタンスにアクセスする必要はありません。クラス内の静的アイテムのデフォルトの可視性は公開されています 静的プロパティ クラスの外部から静的プロパティにアクセスするには、クラスの名前とともにスコープ解決演算子(::)を使用する必要があります。クラスの名前に評価される文字列変数は、静的プロパティにも提供できます <?php class testclass{ static $name="test"; } echo testclass::$n
-
PHP後期静的バインディング
はじめに PHPでのレイト静的バインディングのこの機能は、静的継承で呼び出されたクラスを参照するために使用されます。静的メソッドが呼び出されると、クラスの名前はスコープ解決演算子(::)で付加されますが、他のインスタンスメソッドの場合は、オブジェクトの名前を使用して呼び出します。 static ::は、メソッドが定義されているクラスを使用して解決されるのではなく、実行時情報を使用して計算されます。現在のクラスへの静的参照は、関数が定義された場所ではなく、関数が属するクラスを使用して解決されます 例 次のコードでは、親クラスがself::プレフィックスを使用して静的ethodを呼び出します。
-
PHPの特性
はじめに PHPは多重継承をサポートしていません。この制限は、特性の機能によってある程度克服されます。 。これは、コードの再利用のメカニズムです。特性の定義はクラスに似ています。ただし、直接インスタンス化することはできません。代わりに、トレイトの機能は、使用によってクラスで利用できるようになります。 キーワード。したがって、クラスはトレイトで定義されたメソッドを利用したり、それらをオーバーライドしたりすることもできます。これは、継承している可能性のある他の親クラスに追加されます。 特性もインターフェースに似ています。違いは、インターフェイスがその内部のメソッドの定義を提供しないことです。こ
-
PHPの可視性モード
はじめに PHPでは、クラスを使用してユーザー定義のcompundデータ型を持つことができます。 キーワード。クラスの新しいインスタンスはオブジェクトです。オブジェクトの特性はクラスの定義に従っており、プロパティ、定数、メソッドのメンバーが含まれている場合があります。 クラスメンバーのアクセシビリティ(可視性とも呼ばれます)は、その定義に付加された可視性プレフィックスキーワードによって異なります。 PHPには3つの可視性キーワードがあります-public 、プライベート および保護 。 publicキーワードで宣言されたクラスメンバーは、anywhareからアクセスできます。保護されたメン
-
PHP $ _GET
はじめに $ _ GET HTTPリクエストのURLに追加されたクエリ文字列を介して現在のスクリプトに渡される変数の連想配列です。配列には、GETリクエストに加えて、クエリ文字列を含むすべてのリクエストが入力されることに注意してください。 $ HTTP_GET_VARS 同じ初期情報が含まれていますが、非推奨になっています デフォルトでは、クライアントブラウザはHTTPGETメソッドによってサーバー上のURLの要求を送信します。 URLに添付されたクエリ文字列には、&で連結されたkey=valueのペアが含まれる場合があります シンボル。 $ _GET連想配列は、これらのキーと値
-
PHP $ GLOBALS
はじめに $ GLOBALSは、すべてのグローバル定義変数への参照の連想配列です。変数の名前はキーを形成し、その内容は連想配列の値です。 $GLOBALSの例 この例は、グローバル変数の名前と内容を含む$GLOBALS配列を示しています 例 <?php $var1="Hello"; $var2=100; $var3=array(1,2,3); echo $GLOBALS["var1"] . "\n"; echo $GLOBALS["var2"] . "\n"; echo implode
-
PHP $ _SERVER
はじめに $ _ SERVER は、HTTPヘッダー、パス、スクリプトの場所などに関する情報を保持するスーパーグローバルです。サーバーと実行環境に関連するすべての情報は、この連想配列で利用できます。この配列のほとんどのエントリは、Webサーバーによって入力されます。 5.4.0より前のバージョンのPHPには、 $ HTTP_SERVER_VARSが含まれていました。 同じ情報が含まれていましたが、現在は削除されています。以下は、このアレイのいくつかの著名なメンバーです PHP_SELF −現在実行中のスクリプトのファイル名を保存します。たとえば、ローカルサーバーのドキュメントルー