簡體   English   中英

提取並重建JSON的鍵值對

[英]extract and rebuild key value pairs for json

我目前有一個包含鍵值對的數組,例如:

Array(
  (int) 250 => 'blue',
  (int) 252 => 'green',
  (int) 289 => 'yellow'
)

那是我調試時得到的格式。

I need it to be formatted as follows:
['key':250,'value':'blue'],
['key':252,'value':'green'],
['key':289,'value':'yellow']

所以基本上我需要它成為“鍵”等於“一個值”&“值” =“一個值”

然后,此數組將序列化為json。

有關如何執行此操作的任何想法?

在您的控制器中:

if($this->RequestHandler->responseType() == 'json'){
    $data = array(
       (int) 250 => 'blue',
       (int) 252 => 'green',
       (int) 289 => 'yellow'
     );
    $this->set('data', $data);
    $this->set('_serialize', 'data');
}

在您的routers.php中

Router::parseExtensions('json');

調用例如: http://localhost/mycontroller/myaction.json

結果

{"250":"blue","252":"green","289":"yellow"}

要么

$data= array(
   (int) 250 => 'blue',
   (int) 252 => 'green',
   (int) 289 => 'yellow'
 );
 foreach ($data as $key => $value) {
     $data[] = array('key'=> $key,'value'=> $value);
 } 
$this->set('data', $data);
$this->set('_serialize', 'data');

結果

[{"key":250,"value":"blue"},{"key":252,"value":"green"},{"key":289,"value":"yellow"}]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM