duanemei2194 2014-11-22 19:35
浏览 29
已采纳

回应子弹列表中的多维数组

I think I have my array correctly inputted but echoing it out to put it into a table is being difficult. I don't know where I am wrong.

Here is my code:

<?php
error_reporting(E_ALL);
//days - Sunday thru Saturday
$daysOfTheWeek = array(0 => 'Sunday', 1 => 'Monday', 2 => 'Tuesday', 3 => 'Wednesday', 4 => 'Thursday', 5 => 'Friday', 6 => 'Saturday');

//sleep schedule 
$sleepSchedule = array( 0 => 'go to sleep early', 1 => 'go to sleep on time', 2 => 'go to sleep on time', 3 => 'go to sleep on time',
               4 => 'go to sleep on time', 5 => 'stay up late', 6 => 'stay up late');

//the chore list 
$thingsToDo = array(
  0 => array('Cleanup the house', 'Do dishes', 'Weekly Quiz!'), //row 1
  1 => array('Grocery shop'), //row 2
  2 => array('Walk at the park', 'Read the weekly PHP chapter', 'Take out the food!', 'Cook dinner!'), //row 3
  3 => array('Homework due!', 'Ice cream sundae!'), //row 4
  4 => array('Walk the dog'), //row 5
  5 => array('Excercise', 'Vist Family'), //row 6
  6 => array('Watch my favorite Tv show', 'Shopping!', 'Make take out food!', 'Relax!!') //row 7 
);

    echo '<tr>';
    echo '<th>Days of the week</th>';
    for ($i = 0; $i < sizeof($daysOfTheWeek); $i++) { 
    echo "<td>{$daysOfTheWeek[$i]}</td>";
    }
    echo '</tr>';

    echo '<tr>';
    echo '<th>Sleep Schedule</th>';
    for ($i = 0; $i < sizeof($sleepSchedule); $i++) { 
    echo "<td>{$sleepSchedule[$i]}</td>";
    }


$thingsToDo = array(
  0 => array('Cleanup the house', 'Do dishes', 'Weekly Quiz!'), //row 1
  1 => array('Grocery shop'), //row 2
  2 => array('Walk at the park', 'Read the weekly PHP chapter', 'Take out the food!', 'Cook dinner!'), //row 3
  3 => array('Homework due!', 'Ice cream sundae!'), //row 4
  4 => array('Walk the dog'), //row 5
  5 => array('Excercise', 'Vist Family'), //row 6
  6 => array('Watch my favorite Tv show', 'Shopping!', 'Make take out food!', 'Relax!!') //row 7 
);

I am good up until the bullet point for each day. Then I have my echo code:

echo '<th>ToDo list</th>';
    $sizeOfThingsToDo = sizeof($thingsToDo);
    for ($i = 0; $i < $sizeOfThingsToDo; $i++) {
    $list = $thingsToDo[$i];

echo '<ul><td><li>';

 echo $list[0].'<br>';
 echo $list[1].'<br>';
 echo $list[2].'<br>';
 echo $list[3].'<br>'; echo '</ul></td></li>';
  • 写回答

3条回答 默认 最新

  • dongmo2324 2014-11-22 19:44
    关注

    You're mixing table elements (<th>, <td>) with list ones (<ul>, <li>). Here is how you can do what you want as a list :

    echo '<b>ToDo list</b>';
    $sizeOfThingsToDo = sizeof($thingsToDo);
    echo '<ul>';
    for ($i = 0; $i < $sizeOfThingsToDo; $i++) {
        $list = $thingsToDo[$i];
        echo '<li>List #'.$i.':';
        echo '    <ul>';
        $sizeOfList = sizeof($list);
        for ($j = 0; $j < $sizeOfList; $j++) {
            echo '        <li>'.$list[$j].'</li>';
        }
        echo '    </ul>';
        echo '</li>';
    }
    echo '</ul>';
    

    EDIT : the same as a row of your table

    echo '<tr><th>ToDo list</th>';
    $sizeOfThingsToDo = sizeof($thingsToDo);
    for ($i = 0; $i < $sizeOfThingsToDo; $i++) {
        $list = $thingsToDo[$i];
        echo '    <td>';
        echo '        <ul>';
        $sizeOfList = sizeof($list);
        for ($j = 0; $j < $sizeOfList; $j++) {
            echo '<li>'.$list[$j].'</li>';
        }
        echo '        </ul>';
        echo '    </td>';
    }
    echo '</tr>';
    

    REEDIT : added bullet points.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的