检查PHP变量是否具有唯一值

检查PHP变量是否具有唯一值,php,Php,我有20个变量,每个变量包含1到10000之间的数字 是否有一种简单的方法来检查所有变量是否都具有唯一的值,如果不发送用户,则发送用户 比如说, if($var1,$var2,$var3...etc are not unique) { location wherever.php exit; } 前端应该防止用户提交相同的值两次,但我需要检查它 谢谢:)将值放入数组中 $var[1] = 590; $var[2] = 614; 将数组传递给php函数 array array_unique (

我有20个变量,每个变量包含1到10000之间的数字

是否有一种简单的方法来检查所有变量是否都具有唯一的值,如果不发送用户,则发送用户

比如说,

if($var1,$var2,$var3...etc are not unique)
{
location wherever.php
exit;
}
前端应该防止用户提交相同的值两次,但我需要检查它


谢谢:)

将值放入数组中

$var[1] = 590;
$var[2] = 614;
将数组传递给php函数

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

如果函数返回的数组比输入的数组小,那么它会找到非唯一的键。

如果变量在数组中的位置,这将非常容易

$var[1] = 590;
$var[2] = 614;
等等

然后你可以做:

foreach ($var as $a_key => $a){
     foreach($var as $b_key => $b){
      if($a==$b && $a_key != $b_key){
         //Do whatever you want to do. 
      }
     }
}

此方法将允许您在每个匹配对上执行函数,或作为对每个匹配对的响应。

将每个变量放入数组
$variables=array($var1,$var2,…)

您还可以比较这些数组,而不是计算它们的元素:

if ( $data != $unique ) {
  // not unique
}

我将使用
array\u unique()

像这样:

function is_unique($array) {
    if (count(array_unique($array)) < count($array)) return false;
    return true;
}
请注意,头必须在任何html代码之前发送。如果不能这样做,则必须使用javascripts
window.location=url
重定向客户端

$arr = array($var1, $var2 ... );
$arr2 = array_unique($arr);

if(count($arr) != count($arr2)){
   // send location;
}
function is_unique($array) {
    if (count(array_unique($array)) < count($array)) return false;
    return true;
}
if (!is_unique($array)) {
    header("location: whatever");
}