2017-03-07 5 views
0

結果jsonファイル、つまりresult.jsonがあり、私は合計と行に別のサブ配列を挿入します。JSONファイルにサブアレイを追加する方法は?

これは私のJSONファイルである

{ "合計": "9"、 "行":[ { "ID": "16"、 "FIRSTNAME": "メラニー"、 "姓"「トレド"、" phone ":" 091919191 "、" email ":" [email protected] "}、{" id ":" 29 "、" firstname ":" x "、" lastname ":" x " ":" 1 "、" email ":" [email protected] "}、{" id ":" 30 "、" firstname ":" y "、" lastname ":" y "、" phone ":" 2 "、" email ":" [email protected] "}、{" id ":" 31 "、" firstname ":" xxx "、" lastname ":" xxxx "、" phone ":" 12345 "、" email ":" [email protected] "}、{" id ":" 33 "、" firstname ":" xy "、" lastname ":" xy "、" phone ":" 1 "、" email ":" test 「yyy」、「yyy」、「phone」:「2」、「email」:「[email protected]」のように、 "}、{" id ":" 35 "、" firstname ":" n "、" lastname ":" n "、" phone ":" 1 "、" email ":" [email protected] " "id": "36"、 "firstname": "q"、 "lastname": "q"、 "phone": "1"、 "email": "[email protected]"}、{"id" "37"、 "firstnam E ":"」、 "姓": ""、 "電話": ""、 "電子メール": ""}ここで ] }

は私のコードは次のことができ

<?php 
$current_data = file_get_contents('result.json'); 
$array_data = json_decode($current_data, true); 
$extra['rows'] = array (
     'id'  => '101', 
     'firstname' => 'marlon', 
     'lastname' => 'berces', 
     'phone'  => '12', 
     'email'  => '[email protected]' 
     ); 
     $array_data[] = $extra; 
     $final_data = json_encode($array_data); 
     file_put_contents('result.json',$final_data); 
?> 

答えて

2

質問を正しく理解していれば、現在の行のリストに新しい行を追加する必要があります。その後、ファイルから取得したすべての静的データであるため、合計を更新する必要があります。

<?php 
// Read json 
$current_data = file_get_contents('result.json'); 
$array_data = json_decode($current_data, true); 

// New row 
$extra = array(
    'id'  => '101', 
    'firstname' => 'marlon', 
    'lastname' => 'berces', 
    'phone'  => '12', 
    'email'  => '[email protected]' 
); 

// Add the new row 
$array_data['rows'][] = $extra; 

// Update the sum 
$array_data['total'] = count($array_data['rows']); 

// Write json 
$final_data = json_encode($array_data); 
file_put_contents('result.json',$final_data); 
?> 
+0

ありがとう...それを持って:) – xdiver

0

ですそれはによって(JavaScriptで)方法)私は、あなたが探していることArray.prototype.push(だと思う

+0

どうすればいいですか? – xdiver

+0

最初に読み込みファイル用にコードを書いてくださいvaribaleに格納してから配列に変換してから配列を使って新しいレコードを再度追加してjsonに変換してファイルに書き込んでください今度はこれらすべてのステップを見つけるにはフロー上でスタック上にこのメソッドがあります –

0

...配列は、新しい値aganiをJSONに変換する追加のためにarray_push使用し、それを変換します。 PHPを使用している場合、array_push()です。

push()/ array_push()メソッドは、配列の最後に1つ以上の要素を追加し、配列の新しい長さを返します。

+0

howそれをコード化できますか? – xdiver

+0

@nezharはそれに私を打ちつけたようだ:) –

関連する問題