skillup

技術ブログ

PHP

Traitによるコードの再利用

投稿日:

PHPでは多重継承が禁じられて(親は1つしかもてない)いるため、共通性のあるコードを書こうと思った時に親にかいていない場合限界があります。

そんな時に使えるのがTraitという考え方で、これを使いますと親ではないのに、コードを再利用することができます(PHP5.4から有効のようです)。interfaceと考え方が近いかも・・・

通常は以下のようなファイル構成でしょうか。

  • Traitそのもの
  • Traitを使う一般のクラス
  • 一般のクラスを使うプログラム

以下に実際のサンプルを書いて見ようと思います。

sampleTrait.php(Traitそのもの)

SampleClass.php()

sampleProgram.php(一般のクラスを使うプログラム)

親とまでは行かないけど汎用的なメソッドを実装させたい時に使えそう・・・

-PHP
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

PHPの無名関数+array系の関数

PHPの無名関数について。 PHP5.3.0以降で実装され、概念としては知っていましたが、あまり使ったことがありませんでした。 今開発しているPHPの案件で無名関数のソースをみたので、復習もかねてメモ …

no image

Laravelのルーティングに関して

Laravelでのルーティングに関して。 惰性で使っていたんですが、これを機にしっかりと整理してみようかと。あくまで頻出パターンのみです。 ディフォルトだとroutes/web.phpが読み込まれます …

no image

エラーハンドリング

エラーが起きた時にPHPだと画面に出ますが(出ない場合は画面が白くなります)、これを検知し、ログに吐いたり任意の処理をできるのがエラーハンドリングです。 フレームワークなどにはほぼこの仕組みが内在して …

no image

拡張子の取得

PHPで配列を取得する場合、下記のメソッドで一気に取得できます。 pathinfo( ファイルパス,PATHINFO_EXTENSION ) いままで正規表現使ったり、explodeでやったりといろん …

no image

APIに関して

RESTAPIのルーティングで気をつけることなんぞを。 直近のプロジェクトではRESTAPIを作ることが多かったんですが気をつけることなんぞを。 Contents1 仕様書はソースから2 ツール3 命 …