首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如果数组键已经存在,则跳过数组键

如果数组键已经存在,则跳过数组键
EN

Stack Overflow用户
提问于 2014-10-26 07:54:38
回答 2查看 640关注 0票数 0

我构建了这样一个数组:

代码语言:javascript
运行
AI代码解释
复制
$array = array(); // start with empty one

$array[] = 'foobar';
$array[] = 'hello';
$array[] = 'foobar';
$array[] = 'world';
$array[] = 'foobar';

正如您所看到的,foobar被重复了三次。如果之前已经添加了键,那么如何使数组跳过键?因此,在这种情况下,不应该添加第二个和第三个foobar

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-10-26 07:57:30

代码语言:javascript
运行
AI代码解释
复制
<?php

    $array = array(); // start with empty one

    $array[] = 'foobar';
    $array[] = 'hello';
    $array[] = 'foobar';
    $array[] = 'world';
    $array[] = 'foobar';

    $array = array_unique($array);  // removes all the duplicates

    var_dump( $array );
?>

来自PHP手册

票数 4
EN

Stack Overflow用户

发布于 2014-10-26 07:59:19

如果您想“跳过”项,则使用此方法。演示

代码语言:javascript
运行
AI代码解释
复制
$array = array("hello", "world", "foobar");
$value1 = "foobar";
$value2 = "test";
if(!in_array($value1, $array)) $array[] = $value1; // this will not be added because foobar already exists in the array
if(!in_array($value2, $array)) $array[] = $value2; // this will be added because it does not exist in the array

如果您不一定要跳过这些项,只需要输出,就可以使用array_unique如下:演示

代码语言:javascript
运行
AI代码解释
复制
$array = array("hello", "world", "foobar", "foobar");
$array = array_unique($array);
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26574868

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档