我可以通过使用array_pop或array_shift从一个数组中移动一个项目,但这适用于字符串的开始或结尾。我期待从阵列拉的项,这是关键,所以:通过键从数组中拉出一个项目
$a = [
'first' => '1st',
'second' => '2nd',
'third' => '3rd'
];
$item = pull_by_key($a, 'second');
echo $item;
输出将是(和$项目将被设置为)2nd
所得阵列应该是:
[ 'first' => '1st', 'third' => '3rd' ]
我可以用自定义功能做到这一点:
function pull_by_key(&$array, $key){
$retval = $array[$key];
unset($array[$key]);
return $retval;
}
...但我不知道是否有是这样做的功能。我找不到任何东西。
所以,要说清楚:我不只是想删除未设置的项目,我想从数组中拉出项目。因此,array_pop
或array_shift
,但不是数组中的第一个或最后一个项目,而是项目的关键项目。
不是重复......这不是从数组移除特定的元素,它是从一个数组拉,看看在功能上,这是拉项目(所以我知道它的内容),然后从阵列中删除它...在你投票结束之前阅读这个问题,请 – patrick
@SebastianBrosch,对不起,但“但我想知道如果有是一个这样做的功能“从一开始就在那里......我不知道知道我可以多清楚一点。我的意思是,既然有一个'array_pop'和'array_shift',有一个'array_pop_by_key'就不足为奇了吧? – patrick
你可以在这里找到所有数组函数的列表:http://php.net/manual/en/ref.array.php - 如果没有你搜索的函数,你必须创建自己的自定义函数。 –