【发布时间】:2014-10-21 19:36:58
【问题描述】:
我有一个充满数据库记录的数组。它可能有很多元素,也可能很少,它会定期变化。
我需要将数组分成两个相等的部分。原因是我将这些数组传递给 Laravel 视图并将它们显示到单独的列中。
这里是被拉取的数据库记录:
$books = Book::where('unitcode', '=', $unitcode['unitcode'])->get();
如果拉动有效,那么我正在运行:
return View::make('showbooks')
->with('books', $books);
我想要做的是通过$books1 和$books2 这实际上是$books 分成两部分。
关于如何做到这一点的任何想法?谢谢
【问题讨论】:
-
@scrowler 你能发布一个关于它使用的答案吗?我对此很陌生,并且无法找到数组的长度然后对其进行分块。
-
$books = array_chunk($books, count($books)/2);- 一分为二 -
@scrowler 谢谢!得到另一半会很简单:
$books = array_chunk($books, count($books)/2, count($books);? -
$books 将包含一个带有两个键的数组,每个键将包含数组的一半。您也可以使用
list($books1, $books2) = array_chunk($books, count($books)/2);将它们放入变量中 -
如果你使用
array_chunk并且它是奇数个元素,它将创建一个包含 3 个数组的数组,而不是 2 个数组,每个数组中都有 +1 个元素。