使用for循环打印阵列时出现故障


Trouble printing array using for loop

这是我的数组结构:

Array
(
    [Title] => Array
        (
            [0] => 
            [1] => One
            [2] => Two
            [3] => Three
            [4] => Four
            [5] => test
            [6] => fsfd
            [7] => wa
        )
)

我想打印标题和数组元素,使其结构如下:

标题

  • 两个

etc

我目前在使用传统的每个循环时遇到了问题

      foreach($items as  $key => $notice ){?>   
}?>

最好的方法是什么?感谢

您的数组是嵌套的。要么使用

foreach($items['Title'] as  $key => $noticeArr ){

或者,如果您想打印第一个数组的密钥,请使用:

foreach($items as  $key => $noticeArr ){
    echo $key . "'n";
    foreach($noticeArr as $notice){
        echo $notice . "'n";//Wrap in <li> tags or however you want to display.
    }
}

您的数组中有一个数组"Title"。

你可以使用传统的for循环:

for ($i = 0; $i < count($yourArray['Title']); $i++) {
  echo $yourArray['Title'][$i];
}

或前臂:

foreach ($yourArray['Title'] as $item) {
  echo $item;
}

您只需要迭代两次,一次用于第一个数组,另一次用于嵌套数组。

$data = array(
    'Title' => array('One','Two','Three'),
);
foreach ($data as $name => $results) {
    echo $name . "<br />";
    foreach ($results as $label)
    {
        echo $label . "<br />";
    }
}

试试这个,会工作

foreach($items as  $key => $noticeArr ){
   echo $key . "<br />";
    $array = array_filter($noticeArr, create_function('$a','return $a!=="";'));
    foreach($array as $notice){
        echo "<li>".$notice ."</li>"."<br />";
    }
}