Marginal engineer blog

マージナル エンジニア ブログ

PHP TraitがUseされているかをチェックする方法

カープ優勝おめでとうございます!!!
優勝の余韻に浸って、ブログを更新することを忘れていた堀田です。
弊社自社サービスにScalaを使用していますが、
実を言うと受託案件、DocGenerator、今月末にリリース予定のサービスは
PHPを使用しています。

PHP5.4以降、言語機能としてTraitが使えます。
TraitによりRubyScalaのMixinに比べて制限はありますが、
PHPでもMixinが可能となっています。

あるクラスで親クラス含め、あるTraitがUseされているかチェックしたい時って
ありませんか?きっとありますよね?

そういうValidationをベタで書くのもいいですが、共通化してみました。
名前は微妙ですが、無視してください。

弊社では、PHP案件にはCakePHP3をよく使用しているので、
namespaceは\App\Utilsとしています。

使用例としては、以下の様な感じです。

弊社ではこれからも言語は絞らず、その時々で最適なプラットフォームを
採用していきます!

酔っぱらいついでに更新しました〜
ではまた。