将字符串值与函数返回值连接[重复]

问题描述 投票:0回答:2

我的以下代码有错误:

$name = "Bush Dvd Player";

print "<a href='?name".print str_replace(' ', '-', $name).".html' >Previous</a>";

页面显示如下:

汽车零件和配件但不是 url 格式?

php string-concatenation
2个回答
4
投票

str_replace()
返回一个将连接到输出字符串的字符串,因此不需要额外的
print
,所以只需省略它:

print "<a href='?name" . str_replace(' ', '-', $name) . ".html' >Previous</a>";

您的旧代码将打印出

str_replace
的结果,然后是第一个字符串文字的串联,以及
print str_replace(' ', '-', $name)
的返回值,然后是第二个字符串文字。


0
投票

发生的情况是内部打印语句在外部打印语句之前被评估。要解决此问题,您只需删除第二个

print

© www.soinside.com 2019 - 2024. All rights reserved.