Javascript 如何在json数组中保留特定元素并删除其他元素?

Javascript 如何在json数组中保留特定元素并删除其他元素?,javascript,php,json,Javascript,Php,Json,我有以下json数组: [ { "id": "1", "title": "Pharmacy", "desc": "xyz"}, { "id": "21", "title": "Engineering", "desc": "xyz"}, { "id": "30", "title": "Agriculture", "desc": "xyz"}, ... ] 我只想保留title元素并删除其他元素。我尝试使用php和javascript解决这个问题。在javascript中,使用: 让数组

我有以下json数组:

[
 { "id": "1", "title": "Pharmacy", "desc": "xyz"},
 { "id": "21", "title": "Engineering", "desc": "xyz"},
 { "id": "30", "title": "Agriculture", "desc": "xyz"},
 ...
]
我只想保留title元素并删除其他元素。我尝试使用php和javascript解决这个问题。

在javascript中,使用:

让数组=[ {id:1,标题:Pharmacy,desc:xyz}, {id:21,标题:工程,描述:xyz}, {id:30,标题:农业,描述:xyz} ]; 让mapped=array.mapi=>{title:i.title}; console.logmapped var arr=[ {id:1,标题:Pharmacy,desc:xyz}, {id:21,标题:工程,描述:xyz}, {id:30,标题:农业,描述:xyz} ]; arr.forEachfunctionobj{ 删除obj.id; 删除obj.desc; }; console.logarr 在PHP中

$string = file_get_contents('yourjsonfile.json');
$json = json_decode($string,true); 

$title = [] ;
foreach($json as $t){
    $title[] =  $t['title'] ;
} 

var_dump($title); 
如果您没有json文件,那么您可以使用json_encode在php中创建json

使用以下方法在php中解决它:

$title = array();
foreach($arr as $val) {
  $json = json_decode($val, TRUE);
  $title[]['title'] = $json['title'];
}

$titleJson = json_encode($title);

var_dump($titleJson); //array of titles

请尝试此代码,希望它对您有价值。

如果您只保留一个属性,您最好将其转换为字符串数组:[制药、工程、农业等]。谢谢@易卜拉欣·马赫里尔
<?php
function setArrayOnField($array,$fieldName){
  $returnArray = [];
  foreach ($array as $val) {
    $returnArray[] = [$fieldName=>$val[$fieldName]];
  }
  return $returnArray;
}
$list = [
  [ "id"=> "1", "title"=> "Pharmacy", "desc"=> "xyz"],
  [ "id"=> "2", "title"=> "Computer", "desc"=> "abc"],
  [ "id"=> "3", "title"=> "Other", "desc"=> "efg"]
];
print_r(setArrayOnField($list,'title'));
 ?>