- function_exists: documentation ( source)
- json_encode: documentation ( source)
<?php
// fake facade / IoC //
class app { public static function make() { return new MyJSON; } }
class JSON {
public function encode($object) {
if (function_exists('json_encode')) {
return json_encode($object);
}
return $this->shimJson();
}
public function shimJson() {
return 'derp';
}
}
///////////////////////
class MyJSON extends JSON {
public function encode($object, $options = JSON_FORCE_OBJECT | JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE) {
return json_encode($object, $options);
}
}
echo app::make('json')->encode(array('test'));