在PHP中回显HTML在哪里放置引号

时间:2013-08-07 14:28:43

标签: php sql echo quotes

我在第一行做错了,它的引号是:

  <td><? echo"<a href='edit.php?id=" . "$row['adminuser_id']" . "'>Edit</a>";?></td>

应该可以正常工作

echo '<td><a href="edit.php?id=' . $row['adminuser_id'] . '">Edit</a></td>';

3 个答案:

答案 0 :(得分:2)

您错误地使用了引号。请尝试以下方法:

<td><?php echo "<a href='edit.php?id=".$row['adminuser_id']."'>Edit</a>";?></td>

虽然上面的代码在语法上是正确的,但以下内容会更清晰(因为您已经在<?php上下文中):

<td><a href="edit.php?id=<?php echo $row['adminuser_id'] ?>">Edit</a></td>

例如,如果$row['adminuser_id']foo,则上述两个代码段都会生成一个包含该网址的链接:

http://example.com/edit.php?id=foo

希望这有帮助!

答案 1 :(得分:1)

根据作者的要求,我会将其作为答案发布。

在大多数情况下,您不需要回显HTML标记。你最好不要。仅响应那部分,即动态,在您的情况下 - 变量。

从PHP 5.5开始,默认情况下,简写回显标记<?=被启用为独立标记,它与禁用的短标记<?无关,您可以毫无后顾之忧地使用短回声来实现这个目标:

<td><a href="edit.php?id=<?=$row['adminuser_id'];?>">Edit</a></td>

当然,你可以一直使用它:

<td><a href="edit.php?id=<?php echo $row['adminuser_id'];?>">Edit</a></td>

但在这两种情况下,你只回显变量。

答案 2 :(得分:0)

这应该有效:

<td><a href="edit.php?id=<?php echo $row['adminuser_id']; ?>">Edit</a></td>