我在html中有一个代码,允许我在两者之间插入一个空格,例如“Play game”。
在html中:
<li><a href="allProduct.php?category=Play Game">Play Game</a></li>
但我不能在echo()中这样做,我只设法得到“play”这个词:
echo("<table width=80%>
<tr>
<ul>
<li><a href="allProduct.php?category=Play Game">Play Game</a</li>
</ul>
</tr>");
答案 0 :(得分:1)
请注意,虽然大多数浏览器只会eat
在网址中添加空格,但每个标准都不允许这样做。您可以参考此documentation,其中包含:
网址不能包含空格。 URL编码通常用+号替换空格。
在PHP中使用urlencode()
将空白空间编码为+
:
$encoded = urlencode('allProduct.php?category=Play Game');
// will give you : allProduct.php?category=Play+Game
此外,您不能使用双引号来包围包含双引号的字符串。我会用单引号括起来。
完整示例:
echo('<table width=80%>
<tr>
<ul>
<li><a href="' . urlencode('allProduct.php?category=Play Game') .'">Play Game</a</li>
</ul>
</tr>');
答案 1 :(得分:1)
你用双引号括起你的echo字符串,同时在字符串本身里面使用双引号。您可以通过将echo字符串括在单引号中,或者使用反斜杠转义字符串中的双引号来解决此问题。 (像这样:\“)
编辑:您可能还想从“播放”和“游戏”中删除空格。使用PHP的urlencode()函数来实现此目的。您也可以使用
,而不是另一张海报的建议。
答案 2 :(得分:0)
使用正确的字符串转义:
echo("<table width=80%>
<tr>
<ul>
<li><a href=\"allProduct.php?category=Play%20Game\">Play Game</a</li>
</ul>
</tr>");
您还必须使用%20
以URL格式对空白进行编码。
答案 3 :(得分:0)
echo('<table width=80%>
<tr>
<ul>
<li><a href="allProduct.php?category=Play%20Game">Play Game</a</li>
</ul>
</tr>');
更改单引号的双引号,它将适用于您
答案 4 :(得分:0)
使用单个'用于回声。 比你可以使用普通的“HTML”
echo '<tag class="xyz">...</tag>';
顺便说一下:你不应该在链接中使用空格。
您可以 - 并且应该使用 - 适当的方法。 在你的情况下
urlencode('Music Albums')
相应地对空间进行编码。
答案 5 :(得分:0)
检查
echo("<table width=80%>
<tr>
<ul>
<li><a href='allProduct.php?category=Play Game'>Play Game</a</li>
</ul>
</tr>");