从关联数组php生成表

时间:2017-03-27 10:33:36

标签: php html

我目前不熟悉PHP并试图从关联数组中生成一个表。有人可以告诉我哪里出错了吗?以下是我的代码:

 <!DOCTYPE html>
 <html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<?php

$associativeArray = array("item1"=>"orange", "item2"=>"apple",
"item3"=>"kumquat", "item4"=>"banana");
echo '<p>Item 3 is a ' . $associativeArray['item3'] .'</p>';
foreach($associativeArray as $key=>$value)
{ 
<tr><td> echo $value['number']; </td></tr>
<tr><td> echo $value['name'];/td></tr>
}


?>

</body>
</html>

2 个答案:

答案 0 :(得分:1)

&#39;数&#39;和&#39; name&#39;没有人知道 即使您重命名变量,它也保持不变。 $ key包含&#34; number&#34; 和$ value包含您的&#34;名称&#34;

因此,您在for for中声明的变量名称将代表&#34;键&#34;和&#34;价值&#34;关联数组。

还要记住,HTML中的表需要标记

答案 1 :(得分:1)

执行此操作的一种方法是创建一个函数,用于保存将在循环中用于创建表的数组和变量。

虽然我确信可能有更好的方法,但我做了类似的事情。

<?php
function getValue(){
    $weekDay = array (
        "Monday"=>"Got the Monday blues",
        "Tuesday"=>"It only Teusday?",
        "Wednesday"=>"Hump day baby!",
        "Thursday"=>"So Happy Its Thursday",
        "Friday"=>"WooHoo Payday!",
        "Saturday"=>"Sleep in till noon",
        "Sunday"=>"Get ready to start all over again!"
    );

    $stmt = '';
    foreach($weekDay as $key=>$value){
        $stmt .= '      <td border="1">'.$key.'</td>';
    }
    $stmt .= '  </tr>
             <tr style="background:#F00;text-align:center;">';

    foreach($weekDay as $key=>$value){
        $stmt .= '      <td border="1">'.$value.'</td>';
    }
    echo $stmt;
}



?>

<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<title>Looping an Associative Array to create a table</title>
</head>

<body>
<div>
    <table width="100%">
        <tr style="background:#EEE;text-align:center;">
            <?=getvalue()?>
        </tr>
    </table>
</div>

结果:

Screenshot of table in browser