PHP の namespace と autoloading の関係を正しく理解する 〜PSR-4 を添えて〜 by おかしょい/岡田 正平

PHP Conference Japan 2023
LT(5分)

PHP の namespace と autoloading の関係を正しく理解する 〜PSR-4 を添えて〜

okashoi おかしょい/岡田 正平 okashoi
3

フレームワークのドキュメントに従って、あるいはプロジェクトの既存のコードに従ってファイル上部に書いた「namespace」「use」といったキーワード。

この意味、正しく理解していますか?
「ディレクトリ名と対応させて書くやつ」「他の言語でいう import みたいなやつでしょ?」みたいな認識をしていませんか?

実は PHP の機能としては namespace(名前空間)とディレクトリ名、ファイル名には一切の関係はありません!

「じゃあ、なんで require とかを書かずに他のファイルに定義したクラスを使えているの?」と思ったあなたに、その仕組みと、それらを支えている存在をお教えします。

※本トークは「第 146 回 PHP 勉強会@東京」にて発表した LT の改訂版です。