Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从数组中获取唯一值_Php_Arrays_Multidimensional Array - Fatal编程技术网

Php 从数组中获取唯一值

Php 从数组中获取唯一值,php,arrays,multidimensional-array,Php,Arrays,Multidimensional Array,我目前有一个数组,看起来像下面的数组,但我只想在数组中显示唯一的结果(说明),我想使用数组_unique?但我总是得到同样的结果 这是我的阵列: $taglist = array(5) { [0]=> array(5) { ["id"]=> string(2) "27" ["page_id"]=> string(2) "18" ["description"]=> string(10) "Web Design" ["slug"]=&

我目前有一个数组,看起来像下面的数组,但我只想在数组中显示唯一的结果(说明),我想使用数组_unique?但我总是得到同样的结果

这是我的阵列:

$taglist = array(5) { 
[0]=> array(5) { 
    ["id"]=> string(2) "27" 
    ["page_id"]=> string(2) "18" 
    ["description"]=> string(10) "Web Design" 
    ["slug"]=> string(10) "web-design" 
    ["visibility"]=> string(7) "visible"
} 
[1]=> array(5) { 
    ["id"]=> string(2) "29" 
    ["page_id"]=> string(2) "18" 
    ["description"]=> string(3) "Tutorials" 
    ["slug"]=> string(3) "tutorials" 
    ["visibility"]=> string(7) "visible"
}
[2]=> array(5) {
    ["id"]=> string(2) "31"
    ["page_id"]=> string(2) "21"
    ["description"]=> string(3) "tag" 
    ["slug"]=> string(3) "tag"
    ["visibility"]=> string(7) "visible"
}
[3]=> array(5) { 
    ["id"]=> string(2) "32" 
    ["page_id"]=> string(2) "21" 
    ["description"]=> string(10) "Web Design" 
    ["slug"]=> string(10) "web-design" 
    ["visibility"]=> string(7) "visible"
}
}
这是我的时间:

$items      = array();
$results    = $taglist;

foreach ($results as $result)
{
$items[]= $result['description'];
$items  = array_unique($items);
}

echo '<ul>';
while ($tag_item = current($items))
{
echo '<li><a href="/'.$page['slug'].'/tag/'.$tag_item['slug'].'/">'.$tag_item['description'].'</a></li>';
    next($items);
}
echo '</ul>';
$items=array();
$results=$taglist;
foreach($results作为$result)
{
$items[]=$result['description'];
$items=数组\唯一($items);
}
回声“
    ”; 而($tag_item=当前($items)) { 回音“
  • ”; 下一个项目(项目); } 回声“
”;
显示$a=var\u导出的结果($taglist,1);echo$a;并且发布这些信息而不是转储信息会让更多的人复制/粘贴你的数组并回复你的答案。既然如此,我们必须再写一遍。如果我要回显$item,我就把数组拿回来?谢谢,看起来它能完成,但我只得到每个结果的第一个字母??你知道为什么我只得到第一个字母吗$新=数组\唯一($new);回声“
    ”;foreach($tag_item){echo'
  • }$new是字符串的一维数组,而不是二维数组,因此
    $tag_item['slug']
    $tag_item['description']
    不应该起作用。@neoszion如果您能向我们展示原始数组的var_export()输出,然后你会得到一些明确的答案。实际上,为了测试我的想法,我必须键入一个测试数组。
    $taglist = array(
    0 => array('description'=>'one'),
    1 => array('description'=>'two'),
    2 => array('description'=>'one'),
    3 => array('description'=>'three'),
    4 => array('description'=>'one'),
    );
    
    // echo var_export($taglist, 1);  // uncomment to see the diff vs var_dump()
    
    foreach($taglist as $tag){
    $new[] = $tag['description'];
    
    }
    
    var_dump(array_unique($new));