(覚書) php5.1.6 では __toString メソッドは使えない

__toString使いたかっただけ

以下、php5.1.6において。

<?php
$obj = new StrObject();

// これは __toString で返る
echo $obj;

// これはダメ。 Object id #1 とか悲しい文字列が返ってくる
$str = strval($obj);
echo $str;

?>

PHP “__toString” magic method: not so magic before 5.2.0 | jcinacio.com

上記の記事によれば、5.1.6以前では、echoやprintで呼ばれたときだけ、__toStringメソッドで返すらしい。気をつけよう。っていうかコード書き直さないと。