[ Index ]

PHP Cross Reference of DokuWiki

title

Body

[close]

/inc/ -> JSON.php (summary)

Converts to and from JSON format. JSON (JavaScript Object Notation) is a lightweight data-interchange format. It is easy for humans to read and write. It is easy for machines to parse and generate. It is based on a subset of the JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999. This feature can also be found in  Python. JSON is a text format that is completely language independent but uses conventions that are familiar to programmers of the C-family of languages, including C, C++, C#, Java, JavaScript, Perl, TCL, and many others. These properties make JSON an ideal data-interchange language.

Author: Michal Migurski
Author: Matt Knapp
Author: Brett Stimmerman
Copyright: 2005 Michal Migurski
License: http://www.opensource.org/licenses/bsd-license.php
Link: http://pear.php.net/pepr/pepr-proposal-show.php?id=198
Version: CVS: $Id: JSON.php,v 1.31 2006/06/28 05:54:17 migurski Exp $
File Size: 827 lines (34 kb)
Included or required:0 times
Referenced: 0 times
Includes or requires: 0 files

Defines 3 classes

JSON:: (8 methods):
  __construct()
  utf162utf8()
  utf82utf16()
  encode()
  name_value()
  reduce_string()
  decode()
  isError()

JSON_Error:: (2 methods):
  __construct()
  __construct()

JSON_Error:: (2 methods):
  __construct()
  __construct()


Class: JSON  - X-Ref

Converts to and from JSON format.

Brief example of use:

<code>
// create a new instance of JSON
$json = new 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);
</code>
__construct($use = 0)   X-Ref
constructs a new JSON instance

param: int     $use    object behavior flags; combine with boolean-OR

utf162utf8($utf16)   X-Ref
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.

param: string  $utf16  UTF-16 character
return: string  UTF-8 character

utf82utf16($utf8)   X-Ref
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.

param: string  $utf8   UTF-8 character
return: string  UTF-16 character

encode($var)   X-Ref
encodes an arbitrary variable into JSON format

param: mixed   $var    any number, boolean, string, array, or object to be encoded.
return: mixed   JSON string representation of input var or an error if a problem occurs

name_value($name, $value)   X-Ref
array-walking function for use in generating JSON-formatted name-value pairs

param: string  $name   name of key to use
param: mixed   $value  reference to an array element to be encoded
return: string  JSON-formatted name-value pair, like '"name":value'

reduce_string($str)   X-Ref
reduce a string by removing leading and trailing comments and whitespace

param: $str    string      string value to strip of comments and whitespace
return: string  string value stripped of comments and whitespace

decode($str)   X-Ref
decodes a JSON string into appropriate variable

param: string  $str    JSON-formatted string
return: mixed   number, boolean, string, array, or object

isError($data, $code = null)   X-Ref


Class: JSON_Error  - X-Ref

__construct($message = 'unknown error', $code = null,$mode = null, $options = null, $userinfo = null)   X-Ref
No description

__construct($message = 'unknown error', $code = null,$mode = null, $options = null, $userinfo = null)   X-Ref
No description

Class: JSON_Error  - X-Ref


__construct($message = 'unknown error', $code = null,$mode = null, $options = null, $userinfo = null)   X-Ref
No description

__construct($message = 'unknown error', $code = null,$mode = null, $options = null, $userinfo = null)   X-Ref
No description