php基本操作问题


php basic operations question

我有一个由50个元素组成的数组。这个数组的大小可以是任何大小。我想把数组的前10个元素放在一个字符串中。

我的程序是:

$array1= array("itself", "aith","Inside","Engineer","cooool","that","it","because");
$i=0;
for($f=0; $f < sizeof(array1); $f++)
{
    $temparry = $temparry.array1[$f];
    if(($f%10) == 0 && ($f !== 0))
    {
         $temparray[$i] = $temparray;
         $i++;   
    }
}

==以便在最后:
我得到
temparray1=前10个元素
临时2-接下来的10个元素。。。

我不是我循环中缺少的那个人。

阅读您的评论后,我认为您想要array_chunk[docs]:

$chunks = array_chunk($array1, 10);

这将创建一个多维数组,每个元素都是包含10个元素的数组。

如果您仍然想将它们连接到一个字符串,您可以使用array_map[docs]implode[ddocs]:

$strings = array_map('implode', $chunks);

这为您提供了一个字符串数组,其中每个元素都是一个块的串联。

这是使用array_spliceimplode可以轻松完成的操作。

示例:

<?php
$array = range(1, 50);
while ( $extracted = array_splice($array, 0, 10) )
{
  // You could also assign this to a variable instead of outputting it.
  echo implode(' ', $extracted); 
}

您在这里所做的只是创建一个临时值,然后将其删除

$myArray = array("itself", "aith","Inside","Engineer",
                 "cooool","that","it","because");
$myString = '';
for($i = 0; $i < 10; $i++) {
    $myString .= $myArray[$i];
}

您也可以在另一个for循环中运行该循环,该循环将贯穿整个数组,给您10个元素增量。

实际上,您可以使用arrray_slice和内爆函数,如下所示:

// put first 10 elements into array output
$output = array_slice($myArray, 10);
// implode the 10 elements into a string
$str = implode("", $output);

OP的固定代码如下所示:

$array1= array("itself","aith","Inside","Engineer","cooool","that","it","because");
$temparry='';
$temparray = array();
for($f=0; $f < count($array1); $f++)
{
    $temparry = $temparry.$array1[$f];
    if(($f%3) == 0 && ($f !== 0))
    {
         $temparray[] = $temparry;
         $temparry = '';
    }
}
print_r($temparray);