亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? json.php.svn-base

?? php的通用框架
?? SVN-BASE
?? 第 1 頁 / 共 2 頁
字號:
<?php/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: *//** * 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. * * This package provides a simple encoder and decoder for JSON notation. It * is intended for use with client-side Javascript applications that make * use of HTTPRequest to perform server communication functions - data can * be encoded into JSON notation for use in a client-side javascript, or * decoded from incoming Javascript requests. JSON format is native to * Javascript, and can be directly eval()'ed with no further parsing * overhead * * All strings should be in ASCII or UTF-8 format! * * LICENSE: Redistribution and use in source and binary forms, with or * without modification, are permitted provided that the following * conditions are met: Redistributions of source code must retain the * above copyright notice, this list of conditions and the following * disclaimer. Redistributions in binary form must reproduce the above * copyright notice, this list of conditions and the following disclaimer * in the documentation and/or other materials provided with the * distribution. * * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN * NO EVENT SHALL CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH * DAMAGE. * * @category * @package     Services_JSON * @author      Michal Migurski <mike-json@teczno.com> * @author      Matt Knapp <mdknapp[at]gmail[dot]com> * @author      Brett Stimmerman <brettstimmerman[at]gmail[dot]com> * @copyright   2005 Michal Migurski * @version     CVS: $Id$ * @license     http://www.opensource.org/licenses/bsd-license.php * @link        http://pear.php.net/pepr/pepr-proposal-show.php?id=198 *//** * Marker constant for Services_JSON::decode(), used to flag stack state */define('SERVICES_JSON_SLICE',   1);/** * Marker constant for Services_JSON::decode(), used to flag stack state */define('SERVICES_JSON_IN_STR',  2);/** * Marker constant for Services_JSON::decode(), used to flag stack state */define('SERVICES_JSON_IN_ARR',  3);/** * Marker constant for Services_JSON::decode(), used to flag stack state */define('SERVICES_JSON_IN_OBJ',  4);/** * Marker constant for Services_JSON::decode(), used to flag stack state */define('SERVICES_JSON_IN_CMT', 5);/** * Behavior switch for Services_JSON::decode() */define('SERVICES_JSON_LOOSE_TYPE', 16);/** * Behavior switch for Services_JSON::decode() */define('SERVICES_JSON_SUPPRESS_ERRORS', 32);/** * Converts to and from JSON format. * * Brief example of use: * * <code> * // 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); * </code> */class Services_JSON{   /**	* constructs a new JSON instance	*	* @param    int     $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()	*/	function Services_JSON($use = 0)	{		$this->use = $use;	}   /**	* 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	* @access   private	*/	function utf162utf8($utf16)	{		// oh please oh please oh please oh please oh please		if(function_exists('mb_convert_encoding')) {			return mb_convert_encoding($utf16, 'UTF-8', 'UTF-16');		}		$bytes = (ord($utf16{0}) << 8) | ord($utf16{1});		switch(true) {			case ((0x7F & $bytes) == $bytes):				// this case should never be reached, because we are in ASCII range				// see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8				return chr(0x7F & $bytes);			case (0x07FF & $bytes) == $bytes:				// return a 2-byte UTF-8 character				// see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8				return chr(0xC0 | (($bytes >> 6) & 0x1F))					 . chr(0x80 | ($bytes & 0x3F));			case (0xFFFF & $bytes) == $bytes:				// return a 3-byte UTF-8 character				// see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8				return chr(0xE0 | (($bytes >> 12) & 0x0F))					 . chr(0x80 | (($bytes >> 6) & 0x3F))					 . chr(0x80 | ($bytes & 0x3F));		}		// ignoring UTF-32 for now, sorry		return '';	}   /**	* 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	* @access   private	*/	function utf82utf16($utf8)	{		// oh please oh please oh please oh please oh please		if(function_exists('mb_convert_encoding')) {			return mb_convert_encoding($utf8, 'UTF-16', 'UTF-8');		}		switch(strlen($utf8)) {			case 1:				// this case should never be reached, because we are in ASCII range				// see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8				return $utf8;			case 2:				// return a UTF-16 character from a 2-byte UTF-8 char				// see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8				return chr(0x07 & (ord($utf8{0}) >> 2))					 . chr((0xC0 & (ord($utf8{0}) << 6))						 | (0x3F & ord($utf8{1})));			case 3:				// return a UTF-16 character from a 3-byte UTF-8 char				// see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8				return chr((0xF0 & (ord($utf8{0}) << 4))						 | (0x0F & (ord($utf8{1}) >> 2)))					 . chr((0xC0 & (ord($utf8{1}) << 6))						 | (0x7F & ord($utf8{2})));		}		// ignoring UTF-32 for now, sorry		return '';	}   /**	* encodes an arbitrary variable into JSON format	*	* @param    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!	*	* @return   mixed   JSON string representation of input var or an error if a problem occurs	* @access   public	*/	function encode($var)	{		switch (gettype($var)) {			case 'boolean':				return $var ? 'true' : 'false';			case 'NULL':				return 'null';			case 'integer':				return (int) $var;			case 'double':			case 'float':				return (float) $var;			case 'string':				// STRINGS ARE EXPECTED TO BE IN ASCII OR UTF-8 FORMAT				$ascii = '';				$strlen_var = strlen($var);			   /*				* Iterate over every character in the string,				* escaping with a slash or encoding to UTF-8 where necessary				*/				for ($c = 0; $c < $strlen_var; ++$c) {					$ord_var_c = ord($var{$c});					switch (true) {						case $ord_var_c == 0x08:							$ascii .= '\b';							break;						case $ord_var_c == 0x09:							$ascii .= '\t';							break;						case $ord_var_c == 0x0A:							$ascii .= '\n';							break;						case $ord_var_c == 0x0C:							$ascii .= '\f';							break;						case $ord_var_c == 0x0D:							$ascii .= '\r';							break;						case $ord_var_c == 0x22:						case $ord_var_c == 0x2F:						case $ord_var_c == 0x5C:							// double quote, slash, slosh							$ascii .= '\\'.$var{$c};							break;						case (($ord_var_c >= 0x20) && ($ord_var_c <= 0x7F)):							// characters U-00000000 - U-0000007F (same as ASCII)							$ascii .= $var{$c};							break;						case (($ord_var_c & 0xE0) == 0xC0):							// characters U-00000080 - U-000007FF, mask 110XXXXX							// see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8							$char = pack('C*', $ord_var_c, ord($var{$c + 1}));							$c += 1;							$utf16 = $this->utf82utf16($char);							$ascii .= sprintf('\u%04s', bin2hex($utf16));							break;						case (($ord_var_c & 0xF0) == 0xE0):							// characters U-00000800 - U-0000FFFF, mask 1110XXXX							// see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8							$char = pack('C*', $ord_var_c,										 ord($var{$c + 1}),										 ord($var{$c + 2}));							$c += 2;							$utf16 = $this->utf82utf16($char);							$ascii .= sprintf('\u%04s', bin2hex($utf16));							break;						case (($ord_var_c & 0xF8) == 0xF0):							// characters U-00010000 - U-001FFFFF, mask 11110XXX							// see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8							$char = pack('C*', $ord_var_c,										 ord($var{$c + 1}),										 ord($var{$c + 2}),										 ord($var{$c + 3}));							$c += 3;							$utf16 = $this->utf82utf16($char);							$ascii .= sprintf('\u%04s', bin2hex($utf16));							break;						case (($ord_var_c & 0xFC) == 0xF8):							// characters U-00200000 - U-03FFFFFF, mask 111110XX							// see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8							$char = pack('C*', $ord_var_c,										 ord($var{$c + 1}),										 ord($var{$c + 2}),										 ord($var{$c + 3}),										 ord($var{$c + 4}));							$c += 4;							$utf16 = $this->utf82utf16($char);							$ascii .= sprintf('\u%04s', bin2hex($utf16));							break;						case (($ord_var_c & 0xFE) == 0xFC):							// characters U-04000000 - U-7FFFFFFF, mask 1111110X							// see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8							$char = pack('C*', $ord_var_c,										 ord($var{$c + 1}),										 ord($var{$c + 2}),										 ord($var{$c + 3}),										 ord($var{$c + 4}),										 ord($var{$c + 5}));							$c += 5;							$utf16 = $this->utf82utf16($char);							$ascii .= sprintf('\u%04s', bin2hex($utf16));							break;					}				}				return '"'.$ascii.'"';			case 'array':			   /*				* As per JSON spec if any array key is not an integer				* we must treat the the whole array as an object. We				* also try to catch a sparsely populated associative				* array with numeric keys here because some JS engines				* will create an array with empty indexes up to				* max_index which can cause memory issues and because				* the keys, which may be relevant, will be remapped				* otherwise.				*				* As per the ECMA and JSON specification an object may				* have any string as a property. Unfortunately due to				* a hole in the ECMA specification if the key is a				* ECMA reserved word or starts with a digit the				* parameter is only accessible using ECMAScript's				* bracket notation.				*/				// treat as a JSON object				if (is_array($var) && count($var) && (array_keys($var) !== range(0, sizeof($var) - 1))) {					$properties = array_map(array($this, 'name_value'),											array_keys($var),											array_values($var));					foreach($properties as $property) {						if(Services_JSON::isError($property)) {							return $property;						}					}					return '{' . join(',', $properties) . '}';				}				// treat it like a regular array				$elements = array_map(array($this, 'encode'), $var);				foreach($elements as $element) {					if(Services_JSON::isError($element)) {						return $element;					}				}				return '[' . join(',', $elements) . ']';			case 'object':

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
午夜a成v人精品| 欧美videofree性高清杂交| 色综合久久综合网欧美综合网| 91免费精品国自产拍在线不卡| 一本色道久久加勒比精品| 91精品一区二区三区在线观看| 久久久精品国产免费观看同学| 伊人性伊人情综合网| 久久精品国产一区二区三| 97久久精品人人做人人爽| 日韩精品最新网址| 亚洲精品欧美专区| 激情图片小说一区| 欧美体内she精高潮| 久久精品欧美日韩| 日韩精品免费视频人成| 色综合天天综合色综合av | 中文字幕欧美三区| 日韩精品三区四区| 91视频免费看| 亚洲成人一区在线| 成人动漫中文字幕| 日韩亚洲欧美在线| 亚洲成人av中文| 波多野洁衣一区| 2020国产精品自拍| 蜜臀久久久久久久| 欧美少妇bbb| 亚洲欧美电影院| 成人高清视频在线| 国产女人aaa级久久久级| 另类小说一区二区三区| 欧美人妖巨大在线| 亚洲成a天堂v人片| 欧美日韩一区二区在线观看| 亚洲欧洲三级电影| 粉嫩绯色av一区二区在线观看| 精品国产免费人成电影在线观看四季| 依依成人综合视频| 成人av在线播放网址| 亚洲视频一区二区在线观看| 亚洲成人在线网站| 欧美色视频在线观看| 亚洲视频在线一区| 国产美女精品人人做人人爽| 日韩精品一区二区三区中文不卡| 亚洲欧美视频在线观看| voyeur盗摄精品| 欧美精品一区二区久久久| 亚洲综合一二区| 欧美日韩精品一区视频| 亚洲成人av中文| 91首页免费视频| 国产精品无遮挡| 91一区二区在线观看| 亚洲精品伦理在线| 欧美在线制服丝袜| 视频一区欧美日韩| 日韩三级视频在线看| 国产精品自在欧美一区| 国产精品视频免费| 在线观看亚洲成人| 日韩黄色一级片| 精品国产91洋老外米糕| 成人性生交大片免费看视频在线 | 国产精品女同一区二区三区| 国产在线观看一区二区 | 欧美精品久久久久久久多人混战| 无码av中文一区二区三区桃花岛| 欧美一区国产二区| 国产精品中文字幕欧美| 国产精品国产三级国产a| 在线精品视频一区二区三四| 日本一道高清亚洲日美韩| 精品国产91九色蝌蚪| eeuss影院一区二区三区| 亚洲精品网站在线观看| 91精品国产欧美一区二区18| 国产精品一区在线| 免费看精品久久片| 国产精品私房写真福利视频| 在线看日本不卡| 老司机精品视频一区二区三区| 亚洲国产精品激情在线观看| jlzzjlzz亚洲日本少妇| 日本不卡一二三区黄网| 国产精品高潮久久久久无| 欧美久久久影院| 另类成人小视频在线| 中文字幕制服丝袜成人av| 欧美午夜精品一区| 免费高清在线一区| 国产精品色哟哟| 欧美图片一区二区三区| 成人小视频免费观看| 国产激情精品久久久第一区二区 | 一区二区三区国产| 精品免费99久久| 欧美天堂亚洲电影院在线播放| 国产成人自拍在线| 日本不卡视频在线| 国产精品欧美一级免费| 欧美v亚洲v综合ⅴ国产v| 丰满放荡岳乱妇91ww| 国产在线视频不卡二| 午夜精品久久久| 亚洲电影一级黄| 最好看的中文字幕久久| 国产精品亲子伦对白| 精品99久久久久久| 欧美久久久久久久久久| 欧美日韩中字一区| 色噜噜狠狠成人中文综合| 国产 日韩 欧美大片| 国产一区二区三区黄视频| 美女视频免费一区| 日日欢夜夜爽一区| 日韩一区精品视频| 午夜一区二区三区在线观看| 亚洲视频一区二区免费在线观看 | 91精品国产综合久久小美女| 91亚洲资源网| 欧美日韩精品高清| 在线视频亚洲一区| 欧美日韩免费一区二区三区视频 | 久久久精品国产免大香伊| 2021国产精品久久精品| 精品福利一二区| 久久久精品国产免大香伊| 亚洲精品一区二区三区福利| 精品国产99国产精品| 26uuu另类欧美亚洲曰本| 欧美精品一区二区高清在线观看 | 精品久久久久久久人人人人传媒| 欧美一区二区三区的| 日韩欧美在线观看一区二区三区| 一本到一区二区三区| 色婷婷综合久色| 欧美日韩免费观看一区三区| 9191成人精品久久| 日韩视频免费观看高清完整版| 欧美一级片在线观看| 精品久久一二三区| 亚洲图片欧美色图| 亚洲精选免费视频| 一区二区高清在线| 日韩国产一二三区| 国产在线不卡一区| k8久久久一区二区三区| 色噜噜狠狠色综合中国| 67194成人在线观看| 日韩午夜在线观看| 51久久夜色精品国产麻豆| 日韩美女视频一区二区在线观看| 久久久国际精品| 一区二区三区在线观看视频| 亚洲超碰精品一区二区| 国产麻豆精品久久一二三| 成人午夜私人影院| 欧美在线观看一区| 精品久久国产老人久久综合| 国产精品色婷婷| 亚洲成人午夜影院| 国产激情偷乱视频一区二区三区| 99在线视频精品| 6080日韩午夜伦伦午夜伦| 久久婷婷综合激情| 亚洲精品少妇30p| 久久99精品久久久久久国产越南| 岛国一区二区三区| 在线播放中文一区| 国产精品美女久久久久aⅴ| 夜夜嗨av一区二区三区中文字幕 | 3atv一区二区三区| 久久久国产午夜精品| 亚洲午夜三级在线| 国产一区二区影院| 欧美日精品一区视频| 久久九九久久九九| 亚洲国产一二三| 国产精品香蕉一区二区三区| 在线免费观看视频一区| 久久精品一二三| 日韩成人精品视频| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 欧美大肚乱孕交hd孕妇| 亚洲欧美乱综合| 国产东北露脸精品视频| 欧美老肥妇做.爰bbww| 中文字幕色av一区二区三区| 蜜臀a∨国产成人精品| 色8久久人人97超碰香蕉987| 久久这里只有精品视频网| 丝瓜av网站精品一区二区| 99麻豆久久久国产精品免费 | 国产尤物一区二区在线 | 91久久精品一区二区三区| 亚洲视频小说图片| 成人精品一区二区三区中文字幕| 久久久久久电影|