Class Services_JSON
Converts to and from JSON format.
Brief example of use:
$json = new Services_JSON();
$value = array('foo', 'bar', array(1, 2, 'baz'), array(3, array(4)));
$output = $json->encode($value);
print($output);
$input = file_get_contents('php://input', 1000000);
$value = $json->decode($input);
Methods summary
public
|
#
__construct( integer $use = 0 )
constructs a new JSON instance
constructs a new JSON instance
Parameters
- $use
object behavior flags; combine with boolean-OR
possible values:
- SERVICES_JSON_LOOSE_TYPE: loose typing.
"{...}" syntax creates associative arrays
instead of objects in decode().
- SERVICES_JSON_SUPPRESS_ERRORS: error suppression.
Values which can't be encoded (e.g. resources)
appear as NULL instead of throwing errors.
By default, a deeply-nested resource will
bubble up with an error, so all return values
from encode() should be checked with isError()
|
public
string
|
#
utf162utf8( string $utf16 )
convert a string from one UTF-16 char to one UTF-8 char
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.
Parameters
Returns
string UTF-8 character
|
public
string
|
#
utf82utf16( string $utf8 )
convert a string from one UTF-8 char to one UTF-16 char
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.
Parameters
Returns
string UTF-16 character
|
public
mixed
|
#
encode( mixed $var )
encodes an arbitrary variable into JSON format
encodes an arbitrary variable into JSON format
Parameters
- $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!
Returns
mixed JSON string representation of input var or an error if a problem occurs
|
public
string
|
#
name_value( string $name, mixed $value )
array-walking function for use in generating JSON-formatted name-value pairs
array-walking function for use in generating JSON-formatted name-value pairs
Parameters
- $name
- name of key to use
- $value
- reference to an array element to be encoded
Returns
string JSON-formatted name-value pair, like '"name":value'
|
public
string
|
#
reduce_string( $str )
reduce a string by removing leading and trailing comments and whitespace
reduce a string by removing leading and trailing comments and whitespace
Parameters
- $str
- string value to strip of comments and whitespace
Returns
string string value stripped of comments and whitespace
|
public
mixed
|
#
decode( string $str )
decodes a JSON string into appropriate variable
decodes a JSON string into appropriate variable
Parameters
- $str
- JSON-formatted string
Returns
mixed number, boolean, string, array, or object
corresponding to given JSON input string.
See argument 1 to Services_JSON() above for object-output behavior.
Note that decode() always returns strings
in ASCII or UTF-8 format!
|
public
|
|