0

私はこれを以下の配列に持っています:

PHP

$arr=array('A','A','B','C');

値を確認したいのですが、値が重複している場合はアラートエラーである必要があります

PHP

$chk=array_count_values($array);
if ( $chk[0] < 1 || $chk[2] < 1 || $chk[3] < 1  || $chk[4] < 1 )
    echo 'array must be uniq';
4

5 に答える 5

12

を使用するarray_unique()と、これを新しい関数に簡単にリファクタリングできます。

function array_is_unique($array) {
   return array_unique($array) == $array;
}

例:

$array = array("a", "a", "b", "c");
echo array_is_unique($array) ? "unique" : "non-unique"; //"non-unique"
于 2013-03-05T08:34:52.380 に答える
1

これを試して :

$arr  =   array('A','A','B','C');
if(count($arr) != count(array_unique($arr))){
  echo "array must be uniq";
}
于 2013-03-05T08:34:27.523 に答える
0

試してみてください:

if ( count($arr) != count(array_unique($arr)) ) {
  echo 'array must be uniq';
}
于 2013-03-05T08:34:48.757 に答える
0

foreach ループを使用して処理し、strpos 関数を使用して、文字列に重複が含まれているかどうかを確認できます。

于 2013-03-05T08:35:24.680 に答える
0

PHPのドキュメントから

array array_unique ( array $array [, int $sort_flags = SORT_STRING ] )

入力配列を受け取り、重複値のない新しい配列を返します。

于 2013-03-05T08:36:50.707 に答える