- var_dump: documentation ( source)
- var_export: documentation ( source)
- str_replace: documentation ( source)
<?php
$original = new class(12){
public $x;
public function __construct($x){
$this->x = $x;
}
public static function __set_state($state){
return new self($state['x']);
}
};
$className = get_class($original);
$export = var_export($original, true);
$export = str_replace($className, "(" . var_export($className, true) . ")", $export);
$imported = eval("return {$export};");
echo "// Modified export: \n", $export, "\n\n";
echo "// Original:\n";
var_dump($original);
echo "// Imported:\n";
var_dump($imported);