Ejemplo n.º 1
0
 public static function decodeServerResponse($json)
 {
     $jsonArray = array_values((array) $json);
     foreach ($jsonArray as &$val) {
         $val = DatumConverter::decodedJSONToDatum($val);
         unset($val);
     }
     $result = new ArrayDatum();
     $result->setValue($jsonArray);
     return $result;
 }
Ejemplo n.º 2
0
 public function testObjectDatumArray()
 {
     $ob = new ArrayDatum(array());
     $this->assertEquals(array(), $ob->run($this->conn));
 }
Ejemplo n.º 3
0
 public static function decodedJSONToDatum($json)
 {
     if (is_null($json)) {
         return NullDatum::decodeServerResponse($json);
     }
     if (is_bool($json)) {
         return BoolDatum::decodeServerResponse($json);
     }
     if (is_int($json) || is_float($json)) {
         return NumberDatum::decodeServerResponse($json);
     }
     if (is_string($json)) {
         return StringDatum::decodeServerResponse($json);
     }
     if (is_array($json)) {
         return ArrayDatum::decodeServerResponse($json);
     }
     if (is_object($json)) {
         return ObjectDatum::decodeServerResponse($json);
     }
     throw new RqlDriverError("Unhandled type " . get_class($json));
 }