Php 如何正确显示数组

Php 如何正确显示数组,php,arrays,Php,Arrays,我有以下数组: array(6) { [0]=> string(4) "XXX1" [1]=> int(16) [2]=> string(4) "YYY1" [3]=> string(4) "XXX2" [4]=> int(632) [5]=> string(4) "YYY2" } 我希望有这样的输出: 第一个XXX-第一个int()-第一个YYY\n 第二个XXX-第二个int()-第二个YYY\n 如何使用

我有以下数组:

array(6) {
  [0]=>
  string(4) "XXX1"
  [1]=>
  int(16)
  [2]=>
  string(4) "YYY1"
  [3]=>
  string(4) "XXX2"
  [4]=>
  int(632)
  [5]=>
  string(4) "YYY2"
}
我希望有这样的输出:

第一个XXX-第一个int()-第一个YYY\n

第二个XXX-第二个int()-第二个YYY\n

如何使用while、for或foreach实现这一点


谢谢。

我不知道您想要的是什么样的输出,但这将它放在段落标签中:

$cnt = 0;
$out = '<p>';
foreach ($arr as $key => $value){
    $out .= $value.' - ';
    $cnt++;
    if ($cnt == 3){
        $cnt = 0;
        $out = substr($out, 0, -3).'</p><p>';
    }
}
$out = substr($out, 0, -3);
$cnt=0;
$out='';
foreach($arr作为$key=>$value){
$out.=$value.'-';
$cnt++;
如果($cnt==3){
$cnt=0;
$out=substr($out,0,-3)。“

”; } } $out=substr($out,0,-3);
像Pe de Leao一样,我不能100%确定我是否理解您想要的输出,但这里有两个候选者:

不检查完整的3个“集合”:


是否检查完整的“集合”3:


这些例子并不是傻瓜式的,例如,它们假设数组在数值上是无孔索引的,但我希望这与您想要的足够接近

<?php
$flat = array(
    "XXX1",
    16,
    "YYY1",
    "XXX2",
    632,
    "YYY2"
);

for ($i = 0; $i < count($flat); $i += 3)
    echo "{$flat[$i]} - {$flat[$i + 1]} - {$flat[$i + 2]}\n";
?>
<?php
$flat = array(
    "XXX1",
    16,
    "YYY1",
    "XXX2",
    632,
    "YYY2",
    "XXX3",
    932
);

for ($i = 0; $i < count($flat) && ($i + 3) < count($flat); $i += 3)
    echo "{$flat[$i]} - {$flat[$i + 1]} - {$flat[$i + 2]}\n";
?>