【发布时间】:2017-08-11 07:39:05
【问题描述】:
我想分别显示通过explode() 获得的值。但问题是我的表格显示了两个完全相同的值。我不知道背后的原因,在 StackOverflow 上彻底搜索,但找不到我的答案。
代码:
<!DOCTYPE html>
<html>
<head>
<title>PHP3</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<link rel="http://netdna.bootstrapcdn.com/font-awesome/3.2.1/css/font-awesome.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container">
<table class="table table-bordered">
<thead>
<tr>
<th>User Name</th>
<th>Domain Name</th>
</tr>
</thead>
<tbody>
<?php
$str = "naveen.dharni@gmail.com";
$hello = explode("@",$str);
foreach ($hello as $value)
{
echo "<tr>";
echo "<td>$hello[0]</td>";
echo "<td>$hello[1]</td>";
echo "</tr>";
}
?>
</tbody>
</table>
</div>
</body>
</html>
【问题讨论】:
-
你需要使用
$value而不是$hello[0] -
您在数据数组上有一个循环,然后在每次迭代中再次打印所有数组内容。要么使用循环,要么直接删除循环并使用 4 个 echo 语句。
-
将字符串转换为数组然后再转换回字符串是多余的,只需将其保留为字符串并使用单个函数调用进行准备——不需要额外的变量,也不需要 foreach 循环。跨度>
标签: php html email delimiter tablecell