Public Member Functions | |
Services_JSON ($use=0) | |
constructs a new JSON instance | |
utf162utf8 ($utf16) | |
convert a string from one UTF-16 char to one UTF-8 char | |
utf82utf16 ($utf8) | |
convert a string from one UTF-8 char to one UTF-16 char | |
encode ($var, $pretty=false) | |
encodes an arbitrary variable into JSON format | |
encode2 ($var) | |
encodes an arbitrary variable into JSON format | |
name_value ($name, $value) | |
array-walking function for use in generating JSON-formatted name-value pairs | |
reduce_string ($str) | |
reduce a string by removing leading and trailing comments and whitespace | |
decode ($str) | |
decodes a JSON string into appropriate variable | |
isError ($data, $code=null) |
Brief example of use:
// create a new instance of Services_JSON $json = new Services_JSON();
// convert a complexe value to JSON notation, and send it to the browser $value = array('foo', 'bar', array(1, 2, 'baz'), array(3, array(4))); $output = $json->encode($value);
print($output); // prints: ["foo","bar",[1,2,"baz"],[3,[4]]]
// accept incoming POST data, assumed to be in JSON notation $input = file_get_contents('php://input', 1000000); $value = $json->decode($input);
Definition at line 116 of file ApiFormatJson_json.php.
Services_JSON::decode | ( | $ | str | ) |
decodes a JSON string into appropriate variable
string | $str JSON-formatted string |
Definition at line 525 of file ApiFormatJson_json.php.
References $i, $key, $obj, reduce_string(), and utf162utf8().
Services_JSON::encode | ( | $ | var, | |
$ | pretty = false | |||
) |
encodes an arbitrary variable into JSON format
mixed | $var any number, boolean, string, array, or object to be encoded. see argument 1 to Services_JSON() above for array-parsing behavior. if var is a strng, note that encode() always expects it to be in ASCII or UTF-8 format! | |
bool | $pretty pretty-print output with indents and newlines |
Definition at line 264 of file ApiFormatJson_json.php.
Services_JSON::encode2 | ( | $ | var | ) |
encodes an arbitrary variable into JSON format
mixed | $var any number, boolean, string, array, or object to be encoded. see argument 1 to Services_JSON() above for array-parsing behavior. if var is a strng, note that encode() always expects it to be in ASCII or UTF-8 format! |
Definition at line 283 of file ApiFormatJson_json.php.
References indent, isError(), and utf82utf16().
Referenced by encode(), and name_value().
Services_JSON::isError | ( | $ | data, | |
$ | code = null | |||
) |
Definition at line 816 of file ApiFormatJson_json.php.
References $code.
Referenced by encode2(), and name_value().
Services_JSON::name_value | ( | $ | name, | |
$ | value | |||
) |
array-walking function for use in generating JSON-formatted name-value pairs
string | $name name of key to use | |
mixed | $value reference to an array element to be encoded |
Definition at line 475 of file ApiFormatJson_json.php.
Services_JSON::reduce_string | ( | $ | str | ) |
reduce a string by removing leading and trailing comments and whitespace
$str | string string value to strip of comments and whitespace |
Definition at line 494 of file ApiFormatJson_json.php.
Referenced by decode().
Services_JSON::Services_JSON | ( | $ | use = 0 |
) |
constructs a new JSON instance
int | $use object behavior flags; combine with boolean-OR |
Definition at line 134 of file ApiFormatJson_json.php.
Services_JSON::utf162utf8 | ( | $ | utf16 | ) |
convert a string from one UTF-16 char to one UTF-8 char
Normally should be handled by mb_convert_encoding, but provides a slower PHP-only method for installations that lack the multibye string extension.
string | $utf16 UTF-16 character |
Definition at line 150 of file ApiFormatJson_json.php.
Referenced by decode().
Services_JSON::utf82utf16 | ( | $ | utf8 | ) |
convert a string from one UTF-8 char to one UTF-16 char
Normally should be handled by mb_convert_encoding, but provides a slower PHP-only method for installations that lack the multibye string extension.
string | $utf8 UTF-8 character |
Definition at line 205 of file ApiFormatJson_json.php.
Referenced by encode2().