学習ログ– category –
-
《PHP8上級試験対策》オブジェクトをforeachで反復すると「publicプロパティだけ」が対象になる
はじめに PHPでは、配列だけでなくオブジェクトも foreach で反復処理できます。ただし、その対象は クラスに定義されたすべてのプロパティではなく、アクセス権のある ... -
《PHP8上級試験対策》無名クラスとトレイトの利用可否
はじめに PHP8 上級試験で「無名クラス(Anonymous Class)」について問われることがあります。その中で「無名クラスではトレイトが使えない」という説明を見かけること... -
《PHP8上級試験対策》spl_autoload_register() と __invoke() を使ったオートローダー解説
はじめに PHP ではクラスやインターフェイスを使う際に「まだ定義が読み込まれていない場合」に、自動的にファイルを読み込む仕組み=オートローダーを利用できます。 ... -
《PHP8上級試験対策》無名クラスと __toString() の動作を理解しよう
はじめに PHPでは、その場限りでしか使わない「使い捨てオブジェクト」が欲しいケースがあります。そんなときに活躍するのが 無名クラス(Anonymous Class) です。 本... -
《PHP8上級試験対策》 値渡し・参照渡し・オブジェクトの挙動を理解する
はじめに PHP の関数呼び出しでは「値渡し」「参照渡し」「オブジェクト渡し」で挙動が異なります。特にオブジェクトは、参照を使わなくても「元の値を変更できる」とい... -
《PHP8上級試験対策》マジックメソッド徹底まとめ(__call / __get / __set / __toString / __invoke)
はじめに PHP には、特定のタイミングで自動的に呼ばれる「マジックメソッド」が用意されています。上級試験でも頻出ですが、混同しやすいポイントが多く、誤答パターン... -
《PHP8上級試験対策》__set() と __get() の正しい挙動:インスタンスと静的プロパティの違い
はじめに PHP のマジックメソッド __set() と __get() は、未定義またはアクセスできないプロパティへのアクセス時に動作します。ただし、この挙動には 「インスタンス... -
《PHP8上級試験対策》コンストラクタとデストラクタの挙動について
はじめに PHPでは、クラスのインスタンス生成・破棄のタイミングで自動的に呼ばれる特殊メソッドとして、コンストラクタ __construct() と デストラクタ __destruct() ... -
《PHP8上級試験対策》__toString()とStringableインターフェースの関係をわかりやすく解説
はじめに PHPでオブジェクトを文字列に変換する際に活躍するのが __toString() マジックメソッド です。さらにPHP8からは、Stringable というインターフェースが追加さ... -
《PHP8上級試験対策》__call() と __callStatic() の動作と mixed 型をわかりやすく解説
はじめに PHP8 上級試験の問題集を解いていて「__call()」「__callStatic()」「mixed 型」が出てきました。一見とっつきにくいですが、実は仕組みをイメージできれば理...