php实现数组中索引关联数据转换成json对象的方法

这篇文章主要介绍了php实现数组中索引关联数据转换成json对象的方法,基于Yii框架分析了php数组与json格式数据的转换技巧,需要的朋友可以参考下

本文实例讲述了php实现数组中索引关联数据转换成json对象的方法,分享给大家供大家参考,具体实现方法如下:

  1. public static function encode(&$var)
  2. {
  3. return '{'.implode(',',self::encodeExcute($var)).'}';
  4. }
  5. private static function encodeExcute(&$var)
  6. {
  7. $json = array();
  8. switch (gettype($var))
  9. {
  10. case 'array':
  11. foreach($var as $key=>$value)
  12. {
  13. if(is_array($value))
  14. {
  15. $json[] = '"'.$key.'":{'.implode(',',self::encodeExcute($value)).'}';
  16. //$json[$key] = self::encode($value);
  17. } elseif (is_object($value)) {
  18. $json[] = "\\"{$key}\\":".json_encode($value->attributes);
  19. } else {
  20. echo 'ERROR 未知类型,还未解析';
  21. Yii::app()->end();
  22. }
  23. }
  24. break;
  25. case 'object':
  26. break;
  27. }
  28. return $json;
  29. }