我有逗号分隔值的字符串。
1,2,3,4,4,4,4,4,4,4,4,01633,4,4
我需要删除重复项,所以我使用
array_unique($str);
但是,它没有返回任何结果。所以我决定输出它来看看我有什么:
print_r($str);
// returns: 1,2,3,4,4,4,4,4,4,4,4,01633,4,4
我有点失落。我检查了它是否是一个阵列,我得到了真实。以下是该字符串的创建方式:
$str = '1,2,3';
foreach ($a as $b) {
$str.= ','.$b;
}
我在这里缺少什么?
答案 0 :(得分:4)
$str = explode(',', $str); // create array
$newArray = array_unique($str); // then process
实际上,虽然...只是在创建字符串之前在array_unique()
上执行$a
。
$a = array_unique($a);
...然后
foreach ($a as $b) { // and so on
答案 1 :(得分:2)
转换为数组,删除重复值,转换为字符串
$str = 'whatever';
$arr = explode( ',', $str );
$newArr = array_unique( $arr );
$newStr = implode( ',', $newArr );
答案 2 :(得分:1)
以逗号分解,制作独特的,将胶水拼凑在一起:
$str = implode(',', array_unique(explode(',', $str)));