PHP 5 では型制約を使用できます。関数のパラメータはオブジェクトのみ指定可能(関数プロトタイプでクラス名を指定)ですが、PHP 5.1以降では配列も指定できるようになりました。 型制約が使用されている場合でも、パラメーターのデフォルト値として NULL が使用されている場合は、関数呼び出し時に実際のパラメーターとして NULL を使用できることに注意してください。
型制約はオブジェクトと配列のみをサポートします (PHP 5.1 以降)。整数型と文字列型はサポートされていません。
文字列型制約を誤って使用すると、次のようなエラーが発生します:
Catchable fatal error: Argument 1 passed to Models_Workflow_Instance::getRand() must be an instance of string, string given,
詳細な例: http://us3.php.net/manual/zh/ language.oop5.typehinting.php