说我有这样的数组
$posts = array(
array('post_title'=>10, 'post_id'=>1),
array('post_title'=>11, 'post_id'=>2),
array('post_title'=>12, 'post_id'=>3),
array('post_title'=>13, 'post_id'=>4),
array('post_title'=>10, 'post_id'=>5)
);
如果重复一个'post_title'或'post_id'值,我怎么能删除第一个维度元素?
示例:
假设我们知道两个第一维元素中的'post_title'是'10'。
如何从$ posts中删除重复的元素? 感谢。
答案 0 :(得分:1)
创建一个新数组,您将存储这些post_title
值。循环遍历$posts
数组并取消设置任何重复项。例如:
$posts = array(
array('post_title'=>10, 'post_id'=>1),
array('post_title'=>11, 'post_id'=>2),
array('post_title'=>12, 'post_id'=>3),
array('post_title'=>13, 'post_id'=>4),
array('post_title'=>10, 'post_id'=>5)
);
$tmp_array = array();
foreach ($posts as $i => $post)
{
if (!in_array($post['post_title'], $tmp_array)) // if it doesn't exist, store it
{
$tmp_array[] = $post['post_title'];
} else { // element exists, delete it
unset($posts[$i]);
}
}
现在,您的$posts
数组中将包含唯一的post_title
值。