<table border="2">
<?PHP
foreach($array1 as $value)
{
echo '<tr><td>';
echo $value;
echo '</td></tr>';
}
?>
</table>
我有更多的数组:array2,array3.
上面的代码只执行array1的值,但是我希望同一个表中所有数组的所有值都在不同的列中!
array1 | array2 | array3
------------------------
| |
| |
| |
| |
我想要这样的东西……
我尝试修改代码,但不知道如何正确地做到这一点.
$data = MysqL_query(" SELECT * FROM user_pokemon_db WHERE user_id = '".$id."' ");
while($rows = MysqL_fetch_assoc($data)) {
$db_id = $rows['id'];
$array[] = $db_id;
$level = $rows['level'];
$array1[] = $level;
$exp = $rows['exp'];
$array2[] = $exp;
$pkmn_id = $rows['pkmn_id'];
$data1 = MysqL_query(" SELECT * FROM pokemons WHERE pk_id = '".$pkmn_id."' ");
while($rows = MysqL_fetch_assoc($data1)) {
$poke = $rows['path']; $array3[] = $poke;
}
}
解决方法:
创建阵列时,不指定键,因此它们是自动生成的.因此,您可以使用for循环的键而不是使用值中的foreach:
我们可以在你的代码中看到$array3比其他的更长.所以我们将基于它:
foreach($array3 as $key => $value)
{
if (isset($array1[$key])){
echo '<tr><td>'.$array1[$key].'</td>';
}else{
echo '<tr><td></td>';
}
if (isset($array2[$key])){
echo '<td>'.$array2[$key].'</td>';
}else{
echo '<td></td>';
}
echo '<td>'.$array3[$key].'</td></tr>';
}
它应该工作
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。