PHPのIteratorインターフェースを継承してforeach文でループできるクラスを作成する

PHPのIteratorインターフェースを継承すると、foreach文でループできるクラスを作成することができます。 実装しなければならないメソッドは次の5つです。 //現在の要素を返す public mixed cur …

Continue reading ‘PHPのIteratorインターフェースを継承してforeach文でループできるクラスを作成する’ »

PHPのparentキーワードで親クラスのプロパティやメソッドにアクセスする

PHPでは、parentキーワードで親クラスのプロパティやメソッドにアクセスできます。 class A { public function __construct() { echo “A\n”; } public fun …

Continue reading ‘PHPのparentキーワードで親クラスのプロパティやメソッドにアクセスする’ »

PHPのネストした三項演算子の落とし穴

『パーフェクトPHP』より。 次のコードの出力する値は? echo true ? 1 : false ? 2 : 0; ほとんどのプログラミング言語とは異なり、PHPの三項演算子は左結合です。 そのため、次のように評価さ …

Continue reading ‘PHPのネストした三項演算子の落とし穴’ »

PHPで開発するとき運用するときのerror_reportingの設定

PHPで開発するとき運用するときのerror_reportingのお勧めの設定を紹介します。 PHPのerror_reporting関数を使うと、出力するエラーの種類を設定することができます。 開発時の設定 開発時には、 …

Continue reading ‘PHPで開発するとき運用するときのerror_reportingの設定’ »