php编程:字符串中有双引号,也有单引号,怎样把字符串定义变量$str 5

<a href="javascript:window.external.AddFavorite('http://www.baidu.com','百度网')"><font color=#b106c0>收藏本站</font></a> 上面的字符串中有双引号,也有单引号,现在要把字符串定义为变量$str 我知道用转义符/可以处理,现在我想知道除这下面的方... 展开
因为如果字符串太长的话用转义符非常麻烦
我有更好的答案
推荐于2018-03-23 10:01:00 最佳答案
PHP里面还有第三种定义字符串的方法叫定界符(文档式字符串变量):
格式为:
变量名=<<<定界符
字符串内容
定界符;

例子:
$str=<<<BEGIN
<a href="javascript:window.external.AddFavorite('http://www.baidu.com','百度网')"><font color=#b106c0>收藏本站</font></a>
BEGIN;

定界符的好处是可以容纳任意字符串而不需要转义。

其他回答

标准做法:
1、如果字符串不是很长,像上面的只有一个<a>标签,一行完全放得下,就使用双引号:
$str = "<a href=\"javascript:window.external.AddFavorite('http://www.baidu.com','百度网')\"><font color=#b106c0>收藏本站</font></a>";
2、如果要包含的HTML代码有多行,可以这样:
print <<<HTML
<html>
HTML内容
</html>
HTML;

注意:我上面用的是直接输出HTML,并未赋值给变量。也可以这样赋值:
$str = <<<HTML
abcdef
HTML;
kilofox | 发布于2011-02-25
评论
首先 单引号中的字符串是不做转义处理的,所以你的写法是不对滴。

其次你可以用 <<<EOF 定界符来做

方法还有很多 但是,我还是不明白你为什么非要定义成str呢
jbash | 发布于2011-02-25
评论
——换行
\t——一个tab符号
……
其他的你可以去看看php手册
cdeoug | 发布于2011-02-25
评论
收起 其他1条回答

为您推荐:

×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消