从数组的每个字开始对新数组中的数组进行分块

发布于 2024-11-28 09:18:18 字数 335 浏览 4 评论 0原文

如何从原始数组的每个单词开始将数组分块到新数组中? 因此每个数组的第一个字应该是前一个数组的第二个字。

例如,

$list(1=>we, 2=>have, 3=>a, 4=>good, 5=>day);

使用 array_chunk 将给出新数组 (we, have)、(a, good)、(day, and) 等等。 但我想要

$newList(0=>(we, have), 1=>(have, a), 2=>(a, good), 3=>(good, day));

How can I chunk an array in new arrays starting with each word of the original array?
So the first word of each array should be the second word of the previous array.

for example

$list(1=>we, 2=>have, 3=>a, 4=>good, 5=>day);

Using array_chunk would give as new arrays (we, have), (a, good), (day, and) and so on..
But I want

$newList(0=>(we, have), 1=>(have, a), 2=>(a, good), 3=>(good, day));

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

晨曦÷微暖 2024-12-05 09:18:18
for ($i = 0; $i < count($list) - 2; $i++) {
  $newList[] = array($list[$i], $list[$i+1]);
}
for ($i = 0; $i < count($list) - 2; $i++) {
  $newList[] = array($list[$i], $list[$i+1]);
}
波浪屿的海角声 2024-12-05 09:18:18

另一种方式:

<?php        
foreach ($list as $key => $word) {
    if ($key < count($list) - 1) $newlist[$key][]   = $word;
    if ($key > 0)                $newlist[$key-1][] = $word;
}
?>

Another way:

<?php        
foreach ($list as $key => $word) {
    if ($key < count($list) - 1) $newlist[$key][]   = $word;
    if ($key > 0)                $newlist[$key-1][] = $word;
}
?>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文