2005-06-01 11:03:58 +00:00
|
|
|
--TEST--
|
|
|
|
Bug #30791 magic methods (__sleep/__wakeup/__toString) call __call if object is overloaded
|
|
|
|
--FILE--
|
|
|
|
<?php
|
2006-05-10 22:46:16 +00:00
|
|
|
|
|
|
|
function my_error_handler($errno, $errstr, $errfile, $errline) {
|
|
|
|
var_dump($errstr);
|
|
|
|
}
|
|
|
|
|
|
|
|
set_error_handler('my_error_handler');
|
|
|
|
|
|
|
|
class a
|
|
|
|
{
|
2005-06-01 11:03:58 +00:00
|
|
|
public $a = 4;
|
|
|
|
function __call($a,$b) {
|
|
|
|
return "unknown method";
|
|
|
|
}
|
|
|
|
}
|
2006-05-10 22:46:16 +00:00
|
|
|
|
2005-06-01 11:03:58 +00:00
|
|
|
$b = new a;
|
|
|
|
echo $b,"\n";
|
|
|
|
$c = unserialize(serialize($b));
|
|
|
|
echo $c,"\n";
|
|
|
|
var_dump($c);
|
2006-05-10 22:46:16 +00:00
|
|
|
|
2005-06-01 11:03:58 +00:00
|
|
|
?>
|
|
|
|
--EXPECT--
|
2006-05-10 22:46:16 +00:00
|
|
|
string(50) "Object of class a could not be converted to string"
|
|
|
|
|
|
|
|
string(50) "Object of class a could not be converted to string"
|
|
|
|
|
2005-06-01 11:03:58 +00:00
|
|
|
object(a)#2 (1) {
|
|
|
|
["a"]=>
|
|
|
|
int(4)
|
|
|
|
}
|
2006-05-10 22:46:16 +00:00
|
|
|
--UEXPECT--
|
|
|
|
unicode(50) "Object of class a could not be converted to string"
|
|
|
|
|
|
|
|
unicode(50) "Object of class a could not be converted to string"
|
|
|
|
|
|
|
|
object(a)#2 (1) {
|
|
|
|
[u"a"]=>
|
|
|
|
int(4)
|
|
|
|
}
|