2017-05-04 6 views
0

私はlaravelとangularを使って作業しています。グラフを追加しようとしています。グラフのプラグインの特定の構造体にデータを取得する必要があります。以下:オブジェクト/ jsonのPHP構造を変更しました

"data": { 
    "enero": { 
     "value": 50 
    }, 
    "febrero": { 
     "value": 130 
    }, 
    "marzo": { 
     "value": 220 
    }, 
    "abril": { 
     "value": 440 
    }, 
    "mayo": { 
     "value": 700 
    }, 
    "junio": null, 
    "julio": null, 
    "agosto": null, 
    "septiembre": null, 
    "octubre": null, 
    "noviembre": null, 
    "diciembre": null 
} 

予想される出力:ここ

"data": [ 
      { 
       "value": "50" 
      }, 
      { 
       "value": "130" 
      }, 
      { 
       "value": "220" 
      }, 
      { 
       "value": "440" 
      }, 
      { 
       "value": "700" 
      }, 
      { 
       "value": null 
      }, 
      { 
       "value": null 
      }, 
      { 
       "value": null 
      }, 
      { 
       "value": null 
      }, 
      { 
       "value": null 
      }, 
      { 
       "value": null 
      }, 
      { 
       "value": null 
      } 
     ] 
+0

あなたはまだまで何かを試してみましたか? –

+0

コードを表示して、そのjsonを生成します – splash58

+0

これは...あなたの質問は何ですか? [**私はどのように良い質問をしますか?**](https://stackoverflow.com/help/how-to-ask) – sidyll

答えて

0

私たちは、必要な出力に含まを収集するためにarray_mapを使用しています。

Try this code snippet here

<?php 

$string='{"data": { 
    "enero": { 
     "value": 50 
    }, 
    "febrero": { 
     "value": 130 
    }, 
    "marzo": { 
     "value": 220 
    }, 
    "abril": { 
     "value": 440 
    }, 
    "mayo": { 
     "value": 700 
    }, 
    "junio": null, 
    "julio": null, 
    "agosto": null, 
    "septiembre": null, 
    "octubre": null, 
    "noviembre": null, 
    "diciembre": null 
} 
}'; 
$result=array_map(function($value){ 
    return is_array($value) ? array("value"=>$value["value"]) : array("value"=>$value); 
}, json_decode($string,true)["data"]); 
$newResult["data"]=array_values($result); 
echo json_encode($newResult,JSON_PRETTY_PRINT); 

出力:

{ 
    "data": [ 
     { 
      "value": 50 
     }, 
     { 
      "value": 130 
     }, 
     { 
      "value": 220 
     }, 
     { 
      "value": 440 
     }, 
     { 
      "value": 700 
     }, 
     { 
      "value": null 
     }, 
     { 
      "value": null 
     }, 
     { 
      "value": null 
     }, 
     { 
      "value": null 
     }, 
     { 
      "value": null 
     }, 
     { 
      "value": null 
     }, 
     { 
      "value": null 
     } 
    ] 
} 
+0

ありがとう、これは私のために働いた –

+0

@RubenMoralesFelixようこそ.. :) –

0
$data = []; // new array 
foreach($oldArray['data'] as $key => $value){ 
    $data['data'][]['value'] = $value['value']; 
} 
関連する問題