for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace IlluminateAgnostic\Str\Support;
use JsonSerializable;
use Carbon\Carbon as BaseCarbon;
use IlluminateAgnostic\Str\Support\Traits\Macroable;
class Carbon extends BaseCarbon implements JsonSerializable
{
use Macroable;
/**
* The custom Carbon JSON serializer.
*
* @var callable|null
*/
protected static $serializer;
* Prepare the object for JSON serialization.
* @return array|string
public function jsonSerialize()
if (static::$serializer) {
return call_user_func(static::$serializer, $this);
}
$carbon = $this;
return call_user_func(function () use ($carbon) {
return get_object_vars($carbon);
});
* JSON serialize all Carbon instances using the given callback.
* @param callable $callback
* @return void
public static function serializeUsing($callback)
static::$serializer = $callback;