php中这个输出,有些不明白,能有人解释下吗?
echo '<img src=" '.GW_UPLOADPATH.$screenshot.' "alt="Score image "/></p>';为什么在src后,src="'.GW_UPLOADPATH.$screenshot.'"为何一个" 插在' '中间,为什么?让人糊涂谢谢
6 回答
![?](http://img1.sycdn.imooc.com/545863c10001865402200220-100-100.jpg)
富国沪深
TA贡献1790条经验 获得超9个赞
单引号里可以直接使用双引号,双引号里可以直接使用单引号。但是如果双引号里要用双引号或者单引号里要用单引号,就要使用转义字符。
另外双引号会执行变量替换,单引号不执行变量替换。
而img标签的src属性需要用引号包含起来。但其实你用单引号包含属性的兼容性也够的。
![?](http://img1.sycdn.imooc.com/54586870000183e302200220-100-100.jpg)
牧羊人nacy
TA贡献1862条经验 获得超7个赞
实在看不懂推荐使用以下写法(可读性最好):
<?php
$src = GW_UPLOADPATH.$screenshot;
$img = sprintf('<img src="%s" alt="Score image">', $src);
其实提主迷惑的是 ""
、''
混合在一起,晕了是不是?
我简单解释下吧,在 php 中 ""
双引号 里面是可以写变量的,但是双引号里面写特殊字符徐亚使用 \
进行转义。例如你上面的代码使用双引号的写法:
echo "<img src=\"{GW_UPLOADPATH.$screenshot}\" alt=\"Score image\">"
然后你问 为什么在src后,src="'.GW_UPLOADPATH.$screenshot.'" 为何一个" 插在' '中间,为什么?让人糊涂
这个很简单,PHP 里面字符串连接使用的是 .
进行连接的。
其实上述代码性能最高的写法是(可读性差了点):
echo '<img src="', GW_UPLOADPATH, $screenshot, '" alt="Score image">';
- 6 回答
- 0 关注
- 479 浏览
添加回答
举报
0/150
提交
取消