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) | |
Static Private Member Functions | |
| static | pearInstalled () |
| Returns cached result of class_exists('pear'), to avoid calling AutoLoader numerous times in cases when PEAR is not present. | |
Static Private Attributes | |
| static | $mHavePear = 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 Services_JSON.php.
| Services_JSON::decode | ( | $ | str | ) |
decodes a JSON string into appropriate variable
| string | $str JSON-formatted string |
Definition at line 538 of file Services_JSON.php.
References $i, 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 277 of file Services_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 296 of file Services_JSON.php.
References indent, isError(), and utf82utf16().
Referenced by encode(), and name_value().
| Services_JSON::isError | ( | $ | data, | |
| $ | code = null | |||
| ) |
Definition at line 829 of file Services_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 488 of file Services_JSON.php.
| static Services_JSON::pearInstalled | ( | ) | [static, private] |
Returns cached result of class_exists('pear'), to avoid calling AutoLoader numerous times in cases when PEAR is not present.
Definition at line 145 of file Services_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 507 of file Services_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 Services_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 163 of file Services_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 218 of file Services_JSON.php.
Referenced by encode2().
Services_JSON::$mHavePear = null [static, private] |
Definition at line 139 of file Services_JSON.php.
1.5.9