我有一个固定数量的递归设置。我需要获取一个随机变量并获取左右值并将它们存储在一个数组中。在for循环中我需要增加数组索引...我该怎么做...如果uid设置为1它工作完美但是在任何其他数字的情况下我不能得到逻辑...
代码就像这样
// global id
$uid=3; // Take from session.
// Range Array
$range[0]=$uid;
$range[1]=2; // level 0
$range[2]=4; // level 1
$range[3]=8; // level 2
$range[4]=16; // level 3
$range[5]=32; // level 4
$range[6]=64; // level 5
$range[7]=128; // level 6
$range[8]=256; // level 7
$range[9]=512; // level 8
$range[10]=1024; // level 9
$range[11]=2048; // level 10
// Range array ends.
$gar[0]=$uid;
$leftid=$uid*2;
$rightid=($uid*2)+1;
// Generate Levels
//Level 1. 2 Elements
$gar[1]=$leftid;
$gar[2]=$rightid;
// Level 2. 4 elements
// range starts with element 1 of range array.
$i=($gar[1]*2);
$ip=($i+$range[2])-1;
$ak=3;
for($x=$i; $x<=$ip; $x++)
{
$gar[$x-1]=$x;
}
var_dump($gar);
如果uid设置为3,则输出如下所示。如果您看到数组键未递增..
array (size=7)
0 => int 3
1 => int 6
2 => int 7
11 => int 12
12 => int 13
13 => int 14
14 => int 15