avoid (string) catchable fatal error for __PHP_Incomplete_Class instances

This commit is contained in:
Yonel Ceruto 2016-02-11 09:15:16 -05:00
parent 2573a380f8
commit bb29979218
1 changed files with 11 additions and 0 deletions

View File

@ -45,6 +45,10 @@ abstract class DataCollector implements DataCollectorInterface, \Serializable
return sprintf('Object(%s)', get_class($var));
}
if ($var instanceof \__PHP_Incomplete_Class) {
return sprintf('__PHP_Incomplete_Class(%s)', $this->getClassNameFromIncomplete($var));
}
if (is_array($var)) {
$a = array();
foreach ($var as $k => $v) {
@ -72,4 +76,11 @@ abstract class DataCollector implements DataCollectorInterface, \Serializable
return (string) $var;
}
private function getClassNameFromIncomplete(\__PHP_Incomplete_Class $var)
{
$array = new \ArrayObject($var);
return $array['__PHP_Incomplete_Class_Name'];
}
}