超ウルトラ小ネタ。
require
で別ファイルを読み込んで、そこで生成したオブジェクトを受け取る場合があります。
こんな感じですね。
main.php
$config = require './config.php';
config.php
$config = new Config();
$config->foo();
$config->bar();
return $config;
ただ、これだと$config
というのがグローバル名前空間を汚染しちゃいます。
そこで無名関数で括っちゃいましょう。
config.php
return (function () {
$config = new Config();
$config->foo();
$config->bar();
return $config;
})();
一件落着。
おしまい。