尝试比较两个PHP数组中的数字
我正在尝试创建一个包含用户输入的数字的数组,然后创建另一个包含0到9之间的随机数字的数组。然后我想比较两个数组,当它们匹配时,回显一个结果 目前,我收到一个致命错误:尝试比较两个PHP数组中的数字,php,arrays,Php,Arrays,我正在尝试创建一个包含用户输入的数字的数组,然后创建另一个包含0到9之间的随机数字的数组。然后我想比较两个数组,当它们匹配时,回显一个结果 目前,我收到一个致命错误: 超过了30秒的最大执行时间 我知道在使用var\u dump后,元素被正确地输入到数组中 $i = 0; while(!in_array($lotArray, $userArray)) { $i ++; } echo "YOU WON it took".$i."times"; ?> 这很好用 $count
超过了30秒的最大执行时间
我知道在使用var\u dump
后,元素被正确地输入到数组中
$i = 0;
while(!in_array($lotArray, $userArray)) {
$i ++;
}
echo "YOU WON it took".$i."times";
?>
这很好用
$count = //your wish of getting random numbers.
$randarr = range('0','9');
$randarr = array_rand($randarr,$count);
$difference= array_diff($randarr,$arr); //let $arr be your array
if(count($difference)==0)
{
//your display code
}
这使您能够创建用户选择的任意数量的随机数 这很好用
$count = //your wish of getting random numbers.
$randarr = range('0','9');
$randarr = array_rand($randarr,$count);
$difference= array_diff($randarr,$arr); //let $arr be your array
if(count($difference)==0)
{
//your display code
}
这使您能够创建用户选择的任意数量的随机数 使用迭代方法比较每个数字是
Oh(n²)
,因为您必须比较X乘以X个数字
相反,采取一种简单的方法:
- 以相同的方式对两个数组进行排序。(
每个)Oh(n log n)
- 用它们创建一个字符串(
)Oh(n)
- 比较字符串。(
)Oh(n)
}使用迭代方法比较每个数字是
Oh(n²)
,因为您必须比较X乘以X个数字
相反,采取一种简单的方法:
- 以相同的方式对两个数组进行排序。(
每个)Oh(n log n)
- 用它们创建一个字符串(
)Oh(n)
- 比较字符串。(
)Oh(n)
}如果要比较两个阵列(所有数字必须相同,顺序相同):
如果要比较两个阵列(所有数字必须相同,顺序相同):
如果
in_array()
返回一次false
,您怎么会认为将1
添加到$i
会改变结果<数组中的code>仍然为false。想一想:“去商店买晚餐吧。”好吧,我买了些冰淇淋。“不,去商店买晚餐。”好吧,我又买了一个冰淇淋。“去商店。”“你想搜索的值是什么?”似乎它们都是数组。如果你能写下两个数组的var_dump输出示例,我们就更容易给出帮助了。我意识到这是错误的。每次为false后,我希望再次重建随机数数组,然后使用用户输入的数组进行检查。比如说,如果我的第一个数组中有1,1,1,1,1,我只希望在随机数数组中也有1,1,1,1,1 in的情况下它能工作,如果in_array()
返回false
一次,是什么让您认为将1
添加到$i
会改变结果<数组中的code>仍然为false。想一想:“去商店买晚餐吧。”好吧,我买了些冰淇淋。“不,去商店买晚餐。”好吧,我又买了一个冰淇淋。“去商店。”“你想搜索的值是什么?”似乎它们都是数组。如果你能写下两个数组的var_dump输出示例,我们就更容易给出帮助了。我意识到这是错误的。每次它为false后,我希望再次重建随机数数组,然后用用户输入的数组进行检查。比如说,如果我的第一个数组中有1,1,1,1,1,我只希望它在随机数数组中也有1,1,1,1时工作
$a1 = array(1, 9, 4);
$a2 = array(1, 9, 4);
if (count(array_diff($a1,$a2)) == 0)
echo "Both array match";