問題引入:PHP字符串的幾種定義方式和各自的區(qū)別
- php字符串的三種定義方式:
單引號
雙引號
heredoc 和newdoc - 區(qū)別:
(1)單引號:
單引號不能解析變量
單引號不能解析轉(zhuǎn)移字符亡呵,只能解析單引號和反斜線本身
變量和字符串之間可以相互用.連接
單引號的效率要高于雙引號
示例:
<?php
$name = 'chenzhitao';
$str = 'my name\tis $name ';
print_r($str."\n");
運行結(jié)果:
chenzhitaodeMacBook-Pro:php chenzhitao$ php demo2.php
my name\tis $name
(2)雙引號:
雙引號可以解析變量鳞芙,變量可以使用特殊字符和{}包含
雙引號可以解析多有轉(zhuǎn)移字符
也可以使用.連接
示例:
<?php
$name = 'chenzhitao';
$age = 26;
$str = "my name\tis $name age is {$age} ";
print_r($str."\n");
$sql = 'select * from user where name = \''.$name.'\'';
print_r($sql."\n");
$sql = "select * from user where name = '$name'";
print_r($sql."\n");
運行結(jié)果:
chenzhitaodeMacBook-Pro:php chenzhitao$ php demo2.php
my name is chenzhitao age is 26
select * from user where name = 'chenzhitao'
select * from user where name = 'chenzhitao'