2015-07-10 135 views
0

所以我有一个数组名为$ subcats这样的:json_encode()不返回结果?

Array 
(
    [83] => Array 
    (
     [0] => Array 
      (
       [id_sous_categ] => 4 
       [val] => filtre a essance 
      ) 

     [1] => Array 
      (
       [id_sous_categ] => 6 
       [val] => filtre AIR 
      )   
    ) 

    [89] => Array 
    (
     [0] => Array 
      (
       [id_sous_categ] => 8 
       [val] => plaquette de frein 
      ) 

     [1] => Array 
      (
       [id_sous_categ] => 9 
       [val] => disque de frien 
      ) 

    ) 
) 

,当我这样做的:$ jsonSubCats = json_encode($ subcats); 结果是空的..我做错了什么?

编辑:的var_dump($ subcats)表示:提前

array(7) { [83]=> array(4) { [0]=> array(2) { ["id_sous_categ"]=> string(1) "4" ["val"]=> string(16) "filtre a essance" } [1]=> array(2) { ["id_sous_categ"]=> string(1) "6" ["val"]=> string(10) "filtre AIR" } [2]=> array(2) { ["id_sous_categ"]=> string(1) "7" ["val"]=> string(14) "filtre a huile" } [3]=> array(2) { ["id_sous_categ"]=> string(2) "14" ["val"]=> string(16) "filtre a gasoile" } } [89]=> array(2) { [0]=> array(2) { ["id_sous_categ"]=> string(1) "8" ["val"]=> string(19) "plaquette de frein " } [1]=> array(2) { ["id_sous_categ"]=> string(1) "9" ["val"]=> string(15) "disque de frien" } } [84]=> array(6) { [0]=> array(2) { ["id_sous_categ"]=> string(2) "10" ["val"]=> string(23) "huile SAE 50 5L 5000 km" } [1]=> array(2) { ["id_sous_categ"]=> string(2) "11" ["val"]=> string(23) "huile SAE 50 1L 5000 km" } [2]=> array(2) { ["id_sous_categ"]=> string(2) "12" ["val"]=> string(22) "huile 15W40 5L 7000 km" } [3]=> array(2) { ["id_sous_categ"]=> string(2) "13" ["val"]=> string(22) "huile 15w40 1L 7000 km" } [4]=> array(2) { ["id_sous_categ"]=> string(2) "15" ["val"]=> string(22) "huile 10W40 5L10000 km" } [5]=> array(2) { ["id_sous_categ"]=> string(2) "16" ["val"]=> string(22) "huile 10W40 1L10000 km" } } [91]=> array(3) { [0]=> array(2) { ["id_sous_categ"]=> string(2) "17" ["val"]=> string(13) "joint culasse" } [1]=> array(2) { ["id_sous_categ"]=> string(2) "18" ["val"]=> string(20) "joint cache soupape " } [2]=> array(2) { ["id_sous_categ"]=> string(2) "19" ["val"]=> string(13) "joint carter " } } [86]=> array(6) { [0]=> array(2) { ["id_sous_categ"]=> string(2) "20" ["val"]=> string(6) "avant " } [1]=> array(2) { ["id_sous_categ"]=> string(2) "21" ["val"]=> string(7) "arrier " } [2]=> array(2) { ["id_sous_categ"]=> string(2) "22" ["val"]=> string(18) "amortisseur avant " } [3]=> array(2) { ["id_sous_categ"]=> string(2) "23" ["val"]=> string(18) "amortisseur arrier" } [4]=> array(2) { ["id_sous_categ"]=> string(2) "24" ["val"]=> string(28) "biellette suspension arriere" } [5]=> array(2) { ["id_sous_categ"]=> string(2) "25" ["val"]=> string(26) "biellette suspension avant" } } [96]=> array(1) { [0]=> array(2) { ["id_sous_categ"]=> string(2) "26" ["val"]=> string(6) "moteur" } } [80]=> array(1) { [0]=> array(2) { ["id_sous_categ"]=> string(2) "27" ["val"]=> string(15) "but�e embrayage" } } } 

感谢。

+1

不能重播:http://codepad.org/pybXlQ7l –

+0

您能否提供完整的脚本,以便我们看看是否有其他可能的原因? – davids3

+0

也许它不是一个数组的数组,而是一个具有非公共属性的对象的数组。 json_encode后不会显示非公共属性 –

回答

0

确保您的服务器中启用了json支持。

在任何php文件中运行简单的<?php phpinfo() ?>并搜索JSON

enter image description here

+0

是的,json也是启用的,版本1.2.1。我在本地主机上工作。 – SoufCoder

+0

你可以运行'var_dump($ subcats)'并在这里发布输出吗? –

+0

我用输出编辑了我的第一篇文章。 – SoufCoder

2
json_encode

失败来编码非UTF8字符串。检查你的字符串编码。如果是这样的话,你必须将字符串转换为utf8或者使用你自己的json_encode实现(你可以通过短语“php json_encode implementation”快速实现谷歌)。

+0

Thanks @pumbo!这是问题。 – SoufCoder