当前位置: 首页>>代码示例>>PHP>>正文


PHP FirePHP::encodeObject方法代码示例

本文整理汇总了PHP中FirePHP::encodeObject方法的典型用法代码示例。如果您正苦于以下问题:PHP FirePHP::encodeObject方法的具体用法?PHP FirePHP::encodeObject怎么用?PHP FirePHP::encodeObject使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在FirePHP的用法示例。


在下文中一共展示了FirePHP::encodeObject方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: json_encode


//.........这里部分代码省略.........
                         break;
                     case $ord_var_c == 0xc:
                         $ascii .= '\\f';
                         break;
                     case $ord_var_c == 0xd:
                         $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->json_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->json_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->json_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->json_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->json_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)) {
                 $this->json_objectStack[] = $var;
                 $properties = array_map(array($this, 'json_name_value'), array_keys($var), array_values($var));
                 array_pop($this->json_objectStack);
                 return '{' . join(',', $properties) . '}';
             }
             $this->json_objectStack[] = $var;
             // treat it like a regular array
             $elements = array_map(array($this, 'json_encode'), $var);
             array_pop($this->json_objectStack);
             return '[' . join(',', $elements) . ']';
         case 'object':
             $vars = FirePHP::encodeObject($var);
             $this->json_objectStack[] = $var;
             $properties = array_map(array($this, 'json_name_value'), array_keys($vars), array_values($vars));
             array_pop($this->json_objectStack);
             return '{' . join(',', $properties) . '}';
         default:
             return null;
     }
 }
开发者ID:erico-deh,项目名称:ocPortal,代码行数:101,代码来源:firephp.php


注:本文中的FirePHP::encodeObject方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。