PHP

[PHP]spl_classes完全解説|SPL提供クラス・インターフェース一覧を取得する方法と活用パターン

はじめにPHP の SPL(Standard PHP Library)は、データ構造・反復子・ファイル操作・例外・オートロードなど、多彩な機能を提供するコアライブラリです。しかし「今の環境で SPL がどんなクラスを提供しているのか」を一覧...
PHP

[PHP]spl_autoload_unregister完全解説|オートロードハンドラを安全に解除する方法と注意点

はじめにspl_autoload_register() でオートロードハンドラを登録したあと、状況によってはそのハンドラを解除したい場面があります。テストのモック差し替え・プラグインのアンロード・特定フェーズでの無効化など、用途はさまざまで...
PHP

[PHP]spl_autoload_register完全解説|オートロードハンドラを登録してクラスを自動読み込みする方法

はじめにPHPで規模の大きいアプリケーションを書くとき、ファイルを一つひとつ require で読み込むのは非現実的です。spl_autoload_register() を使えば、未定義クラスが参照された瞬間に自動でファイルを読み込む「オー...
PHP

[PHP]spl_autoload_functions完全解説|登録済みオートロードハンドラを取得・検査する方法

はじめにPHPのオートロードは spl_autoload_register() で複数のハンドラを**キュー(待ち行列)**として積み上げる仕組みです。しかし、実行中のプログラムで「今どんなハンドラが、どんな順番で登録されているのか」を確認...
PHP

[PHP]spl_autoload_extensions完全解説|オートロード対象の拡張子を設定・管理する方法

はじめにPHPのデフォルトオートローダー spl_autoload() はクラス名からファイルパスを自動生成しますが、その際にどの拡張子のファイルを検索するかを制御しているのが spl_autoload_extensions() です。デフ...
PHP

[PHP]spl_autoload_call完全解説|オートロードを手動トリガーする方法と活用パターン

はじめにPHPのオートロードは通常、未定義クラスを参照したタイミングで自動的に発動します。しかし、「クラスが存在するかどうかを事前に確認したい」「ロードのタイミングを自分でコントロールしたい」「ウォームアップ処理としてまとめて読み込みたい」...
PHP

[PHP]spl_autoload完全解説|クラスのオートロード仕組みと実践的な使い方

はじめにPHPでクラスを使うとき、ファイルを一つひとつ require するのは手間がかかります。オートロードはクラスが初めて参照された瞬間に自動でファイルを読み込む仕組みで、現代のPHPアプリケーションには欠かせません。spl_autol...
PHP

[PHP]settype完全解説|変数の型を動的に変換する方法とキャストとの違いを徹底比較

はじめにPHPは動的型付け言語であり、変数の型は実行時に自動で変換されることが多いですが、明示的に型を変換したい場面は少なくありません。そのための手段として、PHPには大きく2つのアプローチがあります。キャスト演算子:(int)$val・(...
PHP

[PHP]serialize完全解説|PHPの値をシリアライズして保存・転送する方法と安全な使い方

はじめにPHPで配列やオブジェクトをファイルやデータベースに保存したり、セッションに格納したりするとき、そのままでは保存できません。このような場面で活躍するのが serialize() です。serialize() はPHPのあらゆる値(配...
PHP

[PHP]stream_wrapper_unregister完全解説|ストリームラッパーを解除してモックや差し替えを実現する方法

はじめにPHPの file_get_contents() や fopen() は、内部的にストリームラッパーという仕組みを通じて動作しています。file://・http://・php:// といったスキームはそれぞれ対応する組み込みラッパー...