如何从 PHP 中的 2 个数字的组合中生成一个唯一的数字?例如,这两个数字的组合;68 和 73,产生 X(X 是唯一的数字)。不管组合号码的顺序如何,它仍然应该产生相同的唯一号码。例如: (68,73)=X 或 (73,68)=X 或 (1,2)=Y 或 (2,1)=Y 的组合,Y 是与 X 不同的数字(因为它是唯一的)。
如果您需要更多信息,请与我们联系。
我认为这个问题与我的问题相似,但它是用 C# 编写的。
我将此代码转换为 PHP:
function getUnique($x, $y){
if($x>$y){
return $y | $x << 32;
} else{
return $x | $y << 32;
}
}
$list = array();
for($i=0 ; $i<100 ;$i++){
$x = rand(1,10); // I just put any random numbers from 1 to 10 so that I can read it easily.
$y = rand(1,10);
$unique = getUnique($x, $y);
$list[$i] = '('.$x.','.$y.')='.$unique;
}
//Find out the results
foreach($list as $ans){
echo $ans.'<br>';
}
但是,它不会产生唯一的数字。此结果的示例:
(2,9)=11
(10,1)=11
(2,9) 应该产生与 (10,1) 不同的数字。