Naveen Prasath
Naveen Prasath

Reputation: 59

How to remove particular JSON element using PHP?

Kindly help me to solve problem, how to remove particular JSON element using PHP. For clear idea kindly look into following example.

$print = '{"Table":[
{"Column":2,"Length":1,"Number":"A4","Row":12}, 
{"Column":2,"Length":1,"Number":"A3","Row":11},
{"Column":2,"Length":1,"Number":"A2","Row":9},
{"Column":2,"Length":1,"Number":"A1","Row":8},  
{"Column":3,"Length":1,"Number":"B4","Row":12},
{"Column":3,"Length":1,"Number":"B3","Row":11},
{"Column":3,"Length":1,"Number":"B2","Row":9},
{"Column":3,"Length":1,"Number":"B1","Row":8},
{"Column":4,"Length":1,"Number":"C4","Row":12},
{"Column":4,"Length":1,"Number":"C3","Row":11},  
{"Column":4,"Length":1,"Number":"C2","Row":9},
{"Column":4,"Length":1,"Number":"C1","Row":8}],"Times":[{"Address":null,"ContactNumbers":null,"ContactPersons":null,"PointId":"90","Landmark":"Kukatpally(Main Bus),Kukatpally, ,04024600350 8121971343 9533931290 9032005712","Location":"Kukatpally(Main Bus),Kukatpally, ,04024600350 8121971343 9533931290 9032005712","Name":null,"Time":"1195"}],"ResponseStatus":200,"Message":null}';

from the above JSON data I want to remove "Times" element and I want to get below JSON data.

 $print = '{"Table":[
    {"Column":2,"Length":1,"Number":"A4","Row":12}, 
    {"Column":2,"Length":1,"Number":"A3","Row":11},
    {"Column":2,"Length":1,"Number":"A2","Row":9},
    {"Column":2,"Length":1,"Number":"A1","Row":8},  
    {"Column":3,"Length":1,"Number":"B4","Row":12},
    {"Column":3,"Length":1,"Number":"B3","Row":11},
    {"Column":3,"Length":1,"Number":"B2","Row":9},
    {"Column":3,"Length":1,"Number":"B1","Row":8},
    {"Column":4,"Length":1,"Number":"C4","Row":12},
    {"Column":4,"Length":1,"Number":"C3","Row":11},  
    {"Column":4,"Length":1,"Number":"C2","Row":9},
    {"Column":4,"Length":1,"Number":"C1","Row":8}],"Times":null,"ResponseStatus":200,"Message":null}';

Kindly help me with solution for the above. I thank you in advance.

Upvotes: 0

Views: 94

Answers (1)

wayzz
wayzz

Reputation: 627

This should do it:

 $jsonObject = json_decode($print); //converting the json to object
 unset($jsonObject->Times); // removing 'Times'
 $jsonEncode = json_encode($jsonObject); //converting back to json string

Tried and tested.

Before:

{"Table":[ {"Column":2,"Length":1,"Number":"A4","Row":12}, {"Column":2,"Length":1,"Number":"A3","Row":11}, {"Column":2,"Length":1,"Number":"A2","Row":9}, {"Column":2,"Length":1,"Number":"A1","Row":8}, {"Column":3,"Length":1,"Number":"B4","Row":12}, {"Column":3,"Length":1,"Number":"B3","Row":11}, {"Column":3,"Length":1,"Number":"B2","Row":9}, {"Column":3,"Length":1,"Number":"B1","Row":8}, {"Column":4,"Length":1,"Number":"C4","Row":12}, {"Column":4,"Length":1,"Number":"C3","Row":11}, {"Column":4,"Length":1,"Number":"C2","Row":9}, {"Column":4,"Length":1,"Number":"C1","Row":8}],"Times":[{"Address":null,"ContactNumbers":null,"ContactPersons":null,"PointId":"90","Landmark":"Kukatpally(Main Bus),Kukatpally, ,04024600350 8121971343 9533931290 9032005712","Location":"Kukatpally(Main Bus),Kukatpally, ,04024600350 8121971343 9533931290 9032005712","Name":null,"Time":"1195"}],"ResponseStatus":200,"Message":null}

After:

{"Table":[{"Column":2,"Length":1,"Number":"A4","Row":12},{"Column":2,"Length":1,"Number":"A3","Row":11},{"Column":2,"Length":1,"Number":"A2","Row":9},{"Column":2,"Length":1,"Number":"A1","Row":8},{"Column":3,"Length":1,"Number":"B4","Row":12},{"Column":3,"Length":1,"Number":"B3","Row":11},{"Column":3,"Length":1,"Number":"B2","Row":9},{"Column":3,"Length":1,"Number":"B1","Row":8},{"Column":4,"Length":1,"Number":"C4","Row":12},{"Column":4,"Length":1,"Number":"C3","Row":11},{"Column":4,"Length":1,"Number":"C2","Row":9},{"Column":4,"Length":1,"Number":"C1","Row":8}],"ResponseStatus":200,"Message":null}

json_decode

unset

json_encode

Upvotes: 1

Related Questions