Smartyクラスを継承する際の書き方について

2013-03-04追記

以下の記述で私が参照していたのは、Smartyバージョン2のドキュメントでした。Smartyバージョン3のドキュメントには、parent::__construct()とする書き方が載っています。


Smartyのドキュメントには、Smartyクラスを継承したクラスの書き方の例として、以下の様なクラスが載っています。

引用元:http://www.smarty.net/docsv2/ja/installing.smarty.extended.tpl

しかし、この書き方だと、PHP5.4.10/Smarty3.1.13の環境では、コンストラクターの呼び出し時に例外が発生して止まりました。以下のように書けば動きます(太字が変更箇所。また、変更箇所に関係ない部分は省略)。

あと、Smarty_GuestBook()メソッドはコンストラクターとして働いていますが、PHP5ではクラス名と同名のメソッド名を付けるべきではないので、__construct()にすべきでしょうね。

コメントを残す