- var_export: documentation ( source)
- serialize: documentation ( source)
- json_encode: documentation ( source)
<?php
class C extends ArrayObject {
public function getArrayCopy() {return [__METHOD__];}
public function getIterator() {yield __METHOD__;}
public function serialize() {return serialize([__METHOD__]);}
public function unserialize($data) {}
public function offsetGet($key) {return __METHOD__;}
public function offsetExists($key) {return TRUE;}
public function offsetSet($key, $value) {}
public function offsetUnset($key) {}
}
$o = new C(['x' => 5]);
var_export([
'json' => json_encode($o),
'(array)' => (array) $o,
'->x' => $o->x,
]);