多维数组php函数怎么写?
How to write multidimensinal array php function?
我需要创建一个函数来创建多维数组,行数和列数可调,每行生成随机数,也是可调的
我现在有这个尝试,但是好像进入了死循环:
function make($length,$start,$end)
{
if ($length<abs($start-$end)+1){
for ($i=0; $i < $length; $i++){
while (!isset($array) || count($array)<$length){
$vel=rand($start,$end);
if (!isset($array) || !in_array($vel,$array)){
$array[$i][]=$vel;
}
}
}
return $array;
} else {
return false;
}
}
请帮忙,我似乎无法弄清楚
您没有检查循环中正确的数组部分
function make($length,$start,$end)
{
if ($length<abs($start-$end)+1){
for ($i=0; $i < $length; $i++){
while (!isset($array[$i]) || count($array[$i])<$length){
// ^^^^ ^^^^
$vel=rand($start,$end);
if (!isset($array[$i]) || !in_array($vel,$array[$i])){
// ^^^^ ^^^^
$array[$i][]=$vel;
}
}
}
return $array;
} else {
return false;
}
}
print_r( make(5,10,30) );
结果
Array
(
[0] => Array
(
[0] => 30
[1] => 16
[2] => 27
[3] => 17
[4] => 26
)
[1] => Array
(
[0] => 21
[1] => 13
[2] => 19
[3] => 25
[4] => 12
)
[2] => Array
(
[0] => 12
[1] => 28
[2] => 20
[3] => 19
[4] => 27
)
[3] => Array
(
[0] => 23
[1] => 17
[2] => 12
[3] => 16
[4] => 15
)
[4] => Array (
[0] => 17
[1] => 11
[2] => 22
[3] => 13
[4] => 10
)
)
我需要创建一个函数来创建多维数组,行数和列数可调,每行生成随机数,也是可调的
我现在有这个尝试,但是好像进入了死循环:
function make($length,$start,$end)
{
if ($length<abs($start-$end)+1){
for ($i=0; $i < $length; $i++){
while (!isset($array) || count($array)<$length){
$vel=rand($start,$end);
if (!isset($array) || !in_array($vel,$array)){
$array[$i][]=$vel;
}
}
}
return $array;
} else {
return false;
}
}
请帮忙,我似乎无法弄清楚
您没有检查循环中正确的数组部分
function make($length,$start,$end)
{
if ($length<abs($start-$end)+1){
for ($i=0; $i < $length; $i++){
while (!isset($array[$i]) || count($array[$i])<$length){
// ^^^^ ^^^^
$vel=rand($start,$end);
if (!isset($array[$i]) || !in_array($vel,$array[$i])){
// ^^^^ ^^^^
$array[$i][]=$vel;
}
}
}
return $array;
} else {
return false;
}
}
print_r( make(5,10,30) );
结果
Array
(
[0] => Array
(
[0] => 30
[1] => 16
[2] => 27
[3] => 17
[4] => 26
)
[1] => Array
(
[0] => 21
[1] => 13
[2] => 19
[3] => 25
[4] => 12
)
[2] => Array
(
[0] => 12
[1] => 28
[2] => 20
[3] => 19
[4] => 27
)
[3] => Array
(
[0] => 23
[1] => 17
[2] => 12
[3] => 16
[4] => 15
)
[4] => Array (
[0] => 17
[1] => 11
[2] => 22
[3] => 13
[4] => 10
)
)