很多时候我们需要将几个字符串连接起来显示,在PHP中,字符串之间使用 “点” 来连接,也就是英文中的半角句号 " . " 。" . " 是字符串连接符,可以把两个或两个以上的字符串链接成一个字符串。例如:
<?php $name = "PHP中文网:"; $url = "www.php"; echo $name . $url . ".cn"; ?>
输出结果为:
PHP中文网: www.php.cn
应用字符串连接符号没有办法实现大量字符串的连接,PHP允许程序员在双引号中直接包含字符串变量,当echo语句后面使用的是 双引号 (" ")时,可以使用下面的格式来达到相同的效果。例如:
<?php $name = "PHP中文网:"; $url = "www.php"; echo "$name$url.cn"; // 双引号里的变量同一般的字符串自动进行区分 ?>
输出结果为:
PHP中文网:www.php.cn
字符串echo输出 逗号也可作php连接符
输出多个字符串时,用逗号代替句点来分隔字符串,速度更快。如下4种方式,都能得到同样的结果,但是,只有第4种方式是最好的。
<?php $foo = 'Tom'; echo "Hello $foo, welcome to phpcn."; echo "<br>"; echo "Hello " . $foo . " welcome to phpcn."; echo "<br>"; echo 'Hello ' . $foo . ' welcome to phpcn.'; echo "<br>"; echo 'Hello ', $foo , ' welcome to phpcn.'; ?>
说明:
第一个逗号" , "不能运行, 因为使用双引号会强制php为此字符串寻找替换值。
第二个好一些,因为php没有替换需要执行的。
第三个更好,因为使用了单引号,因此语言知道你能够脱离进程传送文本,但是“不好”的事情是使用了连接符(不操作,就行第二个例子一样)。
最后一个使用了单引号,并且加了一个连接符。为什么这样处理最好呢?
我们先看看第三个情况,php创建一个字符串,包含“Hello”,然后扩充它,加上foo变量(“Tom”),然后,再次扩充它,加上“welcome to phpcn.”语句,然后,echo能使用它。
然而第四的情况是,echo唯一做的一件事是发送“Hello”,接着输出$foo的内容,再输出“welcome to phpcn.”。因为echo仅仅是发送文本而没有创建一个需要扩充内容的字符串。
到这里,就应该明白了优化php字符串连接符,可以提高程序运行速度。而且发现原来“,”逗号也可作php的连接符的,平时大家一般都是使用一点“.”作连接符的。是不是感觉很神奇?
据说,这可能是从C开始带过来的习惯,printf这类的输出都是变参的,echo也继承了这个优良传统。不过需要明白的是,这里的逗号是参数间隔符,不是字符串连接符。
再来说说逗号与句号的区别
echo $str,$str2,$str3;
使用逗号进行运算是逐个输出运算结果
而
echo $str.$str2.$str3;
使用点号是先对所有字符串进行运算得到结果再输出。
这样看当然是 逗号的效率比点号高。 因为逗号连接是不需要运算的。
Atas ialah kandungan terperinci PHP字符串连接符的使用实例. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!