谈谈PHP中的单引号和双引号

2024-11-23 0 524

我们在做字符串拼接的时候,有多种方式,最常用的莫过于使用单引号和双引号拼接了,当让()也用的比较多,但每次在使用单引号和双引号时,总会纠结使用哪一种方式,不知道你们有没有纠结过,所以今天来仔细研究下。

单引号

我们先来看个单引号的例子:

$s = 'world';
echo 'hello ' . $s; // hello world
echo 'hello $s'; // hello $s

从上面简单的例子,可以看到,使用单引号我们需要用.进行拼接,还有在单引号里面传变量的话,它会原样给你,$依然存在,php的解释器并没有做任何的加工。另外还有,如果想要在单引号中显示单引号或者,需要使用转义( ),而且单引号中只支持这两种其它转义都不支持,比如r,n, 同时,单引号中可以直接使用双引号,双引号中也可以直接显示单引号,这都不需要转义 如下:

echo ''hello world''; // 'hello world'
echo 'hello n world'; // hello n world
echo '"hello world"'; // "hello world"

双引号

在使用双引号时,里面的变量可以被求值,

$a = ['foo','bar'];
$b = 'world';
echo "hello {$b}"; // hello world
echo "hello ${b}"; // hello world
echo "haha $a[0]"; // haha foo
echo “hello n world”; // 可以换行
// hello
// world

从代码美观上来看,双引号看起来要简洁很多,尤其是拼接一个长的句子时,如果再夹杂着html,那更是眼花缭乱:

$name = 'Daniel';
$city = 'NJ';
$age = 18;
echo "hello, my name is {$name}, i come from {$city}, i am {$age} years old";
echo 'hello, my name is ' . $name . ', i come from ' . $city . ', i am ' . $age . ' years old';

同时双引号支持更多的转义字符,官网截图如下:

谈谈PHP中的单引号和双引号

关于双引号和单引号这里贴一个上高赞的回答:

$s = "dollars";
echo 'This costs a lot of $s.'; // This costs a lot of $s.
echo "This costs a lot of $s."; // This costs a lot of dollars.

更进一步

看完了双引号和单引号的外在表现,我们再来看看它们的,一窥到底。

本操作中使用的是 PHP 7.3.0版本

先来看看单引号:

$s = 'world';
echo 'hello ' . $s; // hello world

短短两行代码,看看底层是怎么实现的:

谈谈PHP中的单引号和双引号

从上面的可以看出,其实很简单,先赋值,然后再拼接输出,最后,一共执行了4个步骤,同样的操作再来看看双引号:

$s = 'world';
echo "hello $s"; // hello world

谈谈PHP中的单引号和双引号

很明显可以看到,双引号执行了5步,多了NOP这一步,而且原来的在这里变成了,这里的NOP就是no 的缩写,告诉计算机不要做任何操作,但是也要浪费一个时钟周期,为啥要这么做呢?‍♂️

上的解释如下(看了依然不明所以):

谈谈PHP中的单引号和双引号

还有一个疑问,单引号和双引号分别使用了和,这两个都有什么区别?如果就字面意思来看是不是后者比前者更快?如果这样那为什么单引号中不使用?有大佬知道的欢迎留言

展会先锋:
商会协会:具有影响力的企业名录,助力你业绩高飞。
名家讲堂:具有最全老师阵容,帮您事业家庭腾飞。
全国展会,全国商会,全国协会,全国企业名录,全国就业会刊持续更新中,每天每周每月都会更新,感谢持续关注,
展会先锋;24小时客服VQ:371240006(展会名录全拼) 土豆号; yiye1314qq
持续更新中。可以充值会员下载您需要的任何资源,有问题客服24小时在线

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

展会先锋-展会名录-免费下载-展会信息-免费发布 展会资讯 谈谈PHP中的单引号和双引号 http://www.zhanhui.shop/16603.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务