2016-04-15 48 views
0

值的任何数组功能这是我的总阵列提供PHP

Array ([0] => Array ([food_name] => Chicken Briyani [food_id] => 4) [1] => Array ([food_name] => Sweet Corn Chicken Soup [food_id] => 6)) 

我需要从阵列

[1] => Array ([food_name] => Sweet Corn Chicken Soup [food_id] => 6) 

删除的价值和需要得到[0] => Array ([food_name] => Chicken Briyani [food_id] => 4

回答

0

您可以使用array_filter通过id删除任何不需要的值。

$arr = array(
 
array('food_name'=>'Chickem Briyani','food_id'=>4), 
 
    array('food_name'=>'Sweet Corn Chicken Soup','food_id'=>6) 
 
); 
 

 
$newarr = array_filter($arr,function($innerArr){ 
 
    if($innerArr['food_id'] === 6){ 
 
     return false; 
 
    } 
 
    return true; 
 
}); 
 
print_r($newarr);

0

您的需求:

你有钥匙01多维数组。你需要只有0 th子数组。

解决方案:

您需要取消1 ST数组元素。

unset()函数应该这样做。

unset($array[1]); 
0

只需使用

unset($array_name[1]); 

在PHP数组是关键值对。

所以,你在呼唤 '1' 键

而且你存储如下阵列上键 '1'

Array ([food_name] => Sweet Corn Chicken Soup [food_id] => 6) 

所以正好被清除该键

像上面我提到

unset($array_name[1]); 

unset()销毁指定的变量。

有关取消设置的更多信息,你可以阅读

http://php.net/manual/en/function.unset.php

+0

考虑解释你的答案;解释*如何*和*为什么*它会工作。 –

+0

@NickZuber我更新了我的答案。 – Jatin

1

除了通过索引删除一个数组元素,你也可以删除由food_name,或者如果您遍历数组中的条目food_id并查找这些值。

如果你想删除一个特定的条目,例如Chickem Briyani之一,你将不得不遍历数组,并寻找数组键。然后,根据food_namefood_id根据您要删除的条目做出if语句。现在

$items = array(
    array('food_name' => 'Chickem Briyani', 'food_id' => 4), 
    array('food_name' => 'Sweet Corn Chicken Soup', 'food_id' => 6) 
); 

foreach($items as $key => $item) { 
    if($item['food_name'] == "Chickem Briyani") { 
    unset($items[$key]); 
    } 
} 

可以删除特定的数组索引,属于特定food_namefood_id

要查看阵列的最终输出,只需使用

print_r($items);