php数组转Json

| |
[不指定 2015/02/13 17:20 | by 刘新修 ]

 

PHP代码
  1. <?php  
  2. header("Content-Type: text/html; charset=utf-8");  
  3.   
  4. $mydb=mysql_connect("localhost","root","root");  
  5. if (!$mydb){  
  6.   die('Could not connect:'. mysql_error());  
  7. }  
  8.   
  9. $db_selected=mysql_select_db("mysql",$mydb);  
  10. //$sql = "SELECT * from Person WHERE Lastname='Adams'";  
  11. $sql="SELECT * from user";  
  12. $result=mysql_query($sql,$mydb);  
  13. //print_r(mysql_fetch_array($result));  
  14.   
  15.   
  16. //处理输出数组格式  
  17. //$db1=mysql_query("select * from `tb_info`");  
  18. /* 
  19. $arr=array(); 
  20. while($rows=mysql_fetch_array($db1)){ 
  21. $key=$rows['id'] 
  22. $arr[$key] = $rows['qucount'] 
  23. } 
  24. */  
  25.   
  26. /************************************************************** 
  27.  * 
  28.  *  使用特定function对数组中所有元素做处理 
  29.  *  @param  string  &$array     要处理的字符串 
  30.  *  @param  string  $function   要执行的函数 
  31.  *  @return boolean $apply_to_keys_also     是否也应用到key上 
  32.  *  @access public 
  33.  * 
  34.  *************************************************************/  
  35. function arrayRecursive(&$array$function$apply_to_keys_also = false)  
  36. {  
  37.     static $recursive_counter = 0;  
  38.     if (++$recursive_counter > 1000) {  
  39.         die('possible deep recursion attack');  
  40.     }  
  41.     foreach ($array as $key => $value) {  
  42.         if (is_array($value)) {  
  43.             arrayRecursive($array[$key], $function$apply_to_keys_also);  
  44.         } else {  
  45.             $array[$key] = $function($value);  
  46.         }  
  47.      
  48.         if ($apply_to_keys_also && is_string($key)) {  
  49.             $new_key = $function($key);  
  50.             if ($new_key != $key) {  
  51.                 $array[$new_key] = $array[$key];  
  52.                 unset($array[$key]);  
  53.             }  
  54.         }  
  55.     }  
  56.     $recursive_counter--;  
  57. }  
  58.      
  59. /************************************************************** 
  60.  * 
  61.  *  将数组转换为JSON字符串(兼容中文) 
  62.  *  @param  array   $array      要转换的数组 
  63.  *  @return string      转换得到的json字符串 
  64.  *  @access public 
  65.  * 
  66.  *************************************************************/  
  67. function JSON($array) {  
  68.     arrayRecursive($array'urlencode', true);  
  69.     $json = json_encode($array);  
  70.     return urldecode($json);  
  71. }  
  72.   
  73.    
  74.   
  75. $array = array  
  76.        (  
  77.           'Name'=>'希亚',  
  78.           'Age'=>20  
  79.        );  
  80.   
  81. /* 
  82. $array=array ( 
  83.   0 =>  
  84.   array ( 
  85.     'icon' =>  
  86.     array ( 
  87.       'hasPhoto' => '0', 
  88.       'photoPath' => '/resources/v20/images/boy.png', 
  89.     ), 
  90.     'age' => '24', 
  91.     'name' => '男士', 
  92.     'province' => '北京', 
  93.     'lottery' => '100元的爱玛电动车代金券', 
  94.     'mobile' => '', 
  95.   ), 
  96.   1 =>  
  97.   array ( 
  98.     'icon' =>  
  99.     array ( 
  100.       'hasPhoto' => '0', 
  101.       'photoPath' => '/resources/v20/images/boy.png', 
  102.     ), 
  103.     'age' => '24', 
  104.     'name' => '男士', 
  105.     'province' => '北京', 
  106.     'lottery' => '100元的爱玛电动车代金券', 
  107.     'mobile' => '', 
  108.   ), 
  109.   2 =>  
  110.   array ( 
  111.     'icon' =>  
  112.     array ( 
  113.       'hasPhoto' => '0', 
  114.       'photoPath' => '/resources/v20/images/boy.png', 
  115.     ), 
  116.     'age' => '25', 
  117.     'name' => '男士', 
  118.     'province' => '上海', 
  119.     'lottery' => '100元的爱玛电动车代金券', 
  120.     'mobile' => '', 
  121.   ), 
  122.   3 =>  
  123.   array ( 
  124.     'icon' =>  
  125.     array ( 
  126.       'hasPhoto' => '0', 
  127.       'photoPath' => '/resources/v20/images/boy.png', 
  128.     ), 
  129.     'age' => '24', 
  130.     'name' => '男士', 
  131.     'province' => '北京', 
  132.     'lottery' => '100元的爱玛电动车代金券', 
  133.     'mobile' => '186****1046', 
  134.   ), 
  135.   4 =>  
  136.   array ( 
  137.     'icon' =>  
  138.     array ( 
  139.       'hasPhoto' => '0', 
  140.       'photoPath' => '/resources/v20/images/boy.png', 
  141.     ), 
  142.     'age' => '24', 
  143.     'name' => '男士', 
  144.     'province' => '北京', 
  145.     'lottery' => '200元的爱玛电动车代金券', 
  146.     'mobile' => '186****1046', 
  147.   ), 
  148.   5 =>  
  149.   array ( 
  150.     'icon' =>  
  151.     array ( 
  152.       'hasPhoto' => '0', 
  153.       'photoPath' => '/resources/v20/images/boy.png', 
  154.     ), 
  155.     'age' => '24', 
  156.     'name' => '男士', 
  157.     'province' => '北京', 
  158.     'lottery' => '100元的爱玛电动车代金券', 
  159.     'mobile' => '', 
  160.   ), 
  161.   6 =>  
  162.   array ( 
  163.     'icon' =>  
  164.     array ( 
  165.       'hasPhoto' => '0', 
  166.       'photoPath' => '/resources/v20/images/boy.png', 
  167.     ), 
  168.     'age' => '24', 
  169.     'name' => '男士', 
  170.     'province' => '北京', 
  171.     'lottery' => '100元的爱玛电动车代金券', 
  172.     'mobile' => '', 
  173.   ), 
  174.   7 =>  
  175.   array ( 
  176.     'icon' =>  
  177.     array ( 
  178.       'hasPhoto' => '0', 
  179.       'photoPath' => '/resources/v20/images/boy.png', 
  180.     ), 
  181.     'age' => '24', 
  182.     'name' => '男士', 
  183.     'province' => '北京', 
  184.     'lottery' => '100元的爱玛电动车代金券', 
  185.     'mobile' => '', 
  186.   ), 
  187.   8 =>  
  188.   array ( 
  189.     'icon' =>  
  190.     array ( 
  191.       'hasPhoto' => '0', 
  192.       'photoPath' => '/resources/v20/images/boy.png', 
  193.     ), 
  194.     'age' => '24', 
  195.     'name' => '男士', 
  196.     'province' => '河南', 
  197.     'lottery' => '100元的爱玛电动车代金券', 
  198.     'mobile' => '', 
  199.   ), 
  200.   9 =>  
  201.   array ( 
  202.     'icon' =>  
  203.     array ( 
  204.       'hasPhoto' => '0', 
  205.       'photoPath' => '/resources/v20/images/boy.png', 
  206.     ), 
  207.     'age' => '24', 
  208.     'name' => '男士', 
  209.     'province' => '北京', 
  210.     'lottery' => '100元的爱玛电动车代金券', 
  211.     'mobile' => '', 
  212.   ), 
  213.   10 =>  
  214.   array ( 
  215.     'icon' =>  
  216.     array ( 
  217.       'hasPhoto' => '1', 
  218.       'photoPath' => '/201412/11/11/49/1418269782350A03EA57_c.jpg', 
  219.     ), 
  220.     'age' => '20', 
  221.     'name' => '白日做梦', 
  222.     'province' => '北京', 
  223.     'lottery' => '100元的爱玛电动车代金券', 
  224.     'mobile' => '', 
  225.   ), 
  226. ); 
  227. */  
  228.   
  229.     
  230. echo JSON($array);  
  231. ?>  

 

PHP/Java/Go | 评论(0) | 引用(0) | 阅读(4479)