通过值json vs arrays拉动对象/数组

时间:2015-10-13 19:12:32

标签: javascript php arrays json

该场景是一个ajax请求获取一个json响应,其中包含product_id以及每个对象中的其他值,我已经有一个php变量,其中包含一系列产品对象(laravel collection),所以我不想拉下这些再添加另一个连接到我的查询并减慢速度。

所以我有两个选项,我可以看到将我的手机对象写入存储在js变量中的json对象或作为关联数组。问题是我能看到访问我需要的数据的唯一方法,即product.make product.name是通过在数组或对象上运行for循环,同时循环遍历ajax请求返回的json的每个对象,嵌套循环并非理想。

我的问题是,有没有办法拉出给定键值所需的对象或数组?对不起,如果不是很清楚,这是我解释它的最佳方式。

提前致谢:)

1 个答案:

答案 0 :(得分:0)

在PHP中,您可以使用array_intersect_keyarray_flip来完成此任务:

$map = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4);
$array_of_keys = array('b', 'd');

var_dump(
    array_intersect_key( $map, array_flip($array_of_keys) )
);

/*
array(2) {
  ["b"]=>
  int(2)
  ["d"]=>
  int(4)
}
*/