$array = array('item1', 'item2', 'item3', 'item4', 'item5');
这里我只想提取数组中的前三项,然后
$implodes = implode(';', $array);
echo $implodes;
应该输出
item1;item2;item3
$i=0;
$new = array();
foreach($array as $arr)
{
$i++;
if($i <= 3)
{
$new[] = $arr;
}
}
看起来不太好
答案 0 :(得分:13)
使用array_slice:
$output = implode(';', array_slice($array, 0, 3));
答案 1 :(得分:3)
为什么不
$string = sprintf('%s;%s;%s', $array[0], $array[1], $array[2]);
答案 2 :(得分:0)
使用
array_slice
$output = array_slice($input, 0, 3);
答案 3 :(得分:0)
您可以使用array_slice
$array = array('item1', 'item2', 'item3', 'item4', 'item5');
$implodes = implode(';', array_slice($array,0,3));
echo $implodes;
答案 4 :(得分:0)
$array = array_slice( $array , 0 , 3 );
答案 5 :(得分:0)
$array = array('item1', 'item2', 'item3', 'item4', 'item5');
$output = array_slice($array, 0, 3);
$implodes = implode(';', $array);
echo $implodes;
答案 6 :(得分:0)
它也可以在没有任何语法糖知识的情况下完成,但具有基本的编程技能
$num = 3;
$result='';
for ($i=0,$i<$num,$i++) {
$result = $result.$array[$i];
if ($i < $num-1) $result = $result.';';
}
答案 7 :(得分:0)
这是一个使用迭代器的解决方案:
echo implode(';', iterator_to_array(
new LimitIterator(
new ArrayIterator(
array('item1', 'item2', 'item3', 'item4', 'item5')), 0, 3)));
这不符合keeping it simple的精神,但它正在发挥作用。我仍然会按照我之前的回答。