我已经问过一个类似的问题,但我需要不同的效果。原来的问题在这里。
我有一个简单的数组。数组长度始终是平方数。所以 16、25、36 等等。
$array = array('1', '2', '3', '4' ... '25');
我所做的是用 HTML 排列数组,使其看起来像一个具有均匀边的块。
我想要做的是对元素进行排序,这样当我将 JSON 编码的数组传递给 jQuery 时,它将迭代数组,淡入当前块,所以我会得到一个循环动画。所以我想像这样对数组进行排序
所以我的排序数组看起来像
$sorted = array('1', '6', '11'', '16', '21', '22', '23' .. '13');
有没有办法这样做?..谢谢
编辑:
我试图通过创建类似矩阵的列/行数组来做到这一点:
$side = 5;
$elems = $side*$side;
$array = range(1,$elems);
for($i=1; $i <= $side; $i++) {
for($x=$i; $x <= $elems; $x=$x+$side) {
$columns[$i][] = $x;
}
}
for($i=1, $y=1; $i <= $elems; $i=$i+$side, $y++) {
for($x=$i; $x < $side+$i; $x++) {
$rows[$y][] = $x;
}
}
我的下一步是走第一列,最后如果它在最后一个元素列上,最后在最后一个元素上等等。如果有人有更好的主意,那就太好了:)