<?php

class rapidjson {
    private $data = '';
    public function StartObject() {$this->data .= '{';}
    public function EndObject()   {$this->data .= '}';}
    public function BeginArray()  {$this->data .= '[';}
    public function EndArray()    {$this->data .= ']';}
    public function Int($value)   {$this->data .= strval(intval($value)) . ', ';}
    public function Key($value)   {$this->data .= '"' . addslashes($value) . '": ';}
    public function String($value){$this->data .= '"' . addslashes($value) . '", ';}
    public function Bool($value)  {$this->data .= '"' . ($value ? 'true' : 'false') . '", ';}
    public function __toString()  {return $this->data;}
}

$writer = new rapidjson();

$writer->StartObject();

$writer->Key("key");
$writer->String("value");

$writer->Key("array_key");
$writer->BeginArray();

$writer->Int(43);
$writer->String("44");
$writer->Bool(true);

$writer->EndArray();

$writer->EndObject();

echo $writer;
