将php数组转换为unicode json

时间:2014-03-25 06:42:08

标签: php json

我需要将动态数组转换为以下格式。我只发布了一个样本

{u'v2':{0:u'No',1:u'Yes'}, u'v3':{1:u'Maybe',3:u'Almost'}}

这就是我所做的:

$valLabels = array();
 $valLabelTemp1 = array();
 $valLabelTemp2 = array();

 $valLabelTemp1['v2'][0] = 'No';
 $valLabelTemp1['v2'][1] = 'Yes';
 $valLabels = $valLabelTemp1; 

 $valLabelTemp2['v3'][0] = 'Maybe';
 $valLabelTemp2['v3'][1] = 'Almost';
 $valLabels = $valLabelTemp2;

当我在文本文件中写下以上内容时:

  

fwrite($ fh,json_encode($ valLabels)。" \ n");

我得到以下输出:

{"v2":["No","Yes"],"v3":["Maybe","Almost"]}

我不想要上面的格式。另外我需要加上“' U'代表unicode。我不知道如何处理这种格式。提前谢谢。

1 个答案:

答案 0 :(得分:3)

您可以这样做:

<?php

$valLabels = array(
  'v2' => array('1' => 'Yes', '0' => 'No'), 
  'v3' => array('1' => 'Maybe','3' => 'Almost')
);

echo json_encode($valLabels);

输出:

{"v2":{"1":"Yes","0":"No"},"v3":{"1":"Maybe","3":"Almost"}}

注意:我们需要恢复(这在json结果中无关紧要)v2数据otherwise php执行某种智能类型转换并且您松散索引。

Demo