我在一些PHP代码中有一个print
语句:
print "<a href='item.php?id='{$row[0]}''><img src='{$row[0]}.jpg'></a>";
在{$row[0]}
中是int
。当我点击图片时,我会看到一个页面“restofweburl / item.php?id =”,网址末尾没有数字。我做错了什么?
答案 0 :(得分:3)
在href
之后,您使用单引号提前结束id=
。将行更改为:
print "<a href='item.php?id={$row[0]}'><img src='{$row[0]}.jpg'></a>";
答案 1 :(得分:1)
这是因为在href之后你有两个单引号。我更喜欢使用以下语法:
print '<a href="item.php?id='.$row[0].'"><img src="'.$row[0].'".jpg"/></a>';
我使用单引号进行打印,因此我可以使用双引号作为html属性(alt / src)。这是一种首选方法,不是一种规则,而是非常常见的做法。
如您所见,颜色高亮显示回显结束的位置,插入变量并继续执行字符串。这样可以更容易地发现像双重单引号问题这样的小错误。