php04—数据类型3-字符串

1.是什么字符串

一串字符就是字符串

2.字符串的声明方式

  1. 单引号声明

     $str = '苹果真有钱,比英国国库的钱还多。我想倒插门';
     var_dump($str); //string '苹果真有钱,比英国国库的钱还多。我想倒插门' (length=63)
    
  2. 双引号声明

     $str = '213';
     var_dump($str); //string "213" (length=3)
    
  3. 定界符声明
    $a='啊';
    $str = << 苹果真有钱,比英国国库的钱还多。
    我想倒插门$a
    EOF;
    var_dump($str);

     结果
    
     string '    苹果真有钱,比英国国库的钱还多。
     我想倒插门' (length=69)
    

注:中文一个汉字占位3个字节。中文的标点也是3个字节

3.单引号和双引号区别

解析转译字符的能力

//1.单引号
$str = '青青子衿\n悠悠我心 this\'s a text';
var_dump($str); 

//string '青青子衿\n悠悠我心 this's a text' (length=40)



//2.双引号
$str = "青青子衿\n悠悠\"我心";
var_dump($str); 

//string '青青子衿
悠悠"\'我心' (length=28)

转义字符格式为\字符。常见的转义字符(\n——换行、\r——回车、\t——tab键)

单引号

  • 不能解析转译字符,只能解析转译斜线\和自己本身(')

2.双引号

  • 可以解析转译字符

解析变量的能力

//1.单引号
$str = '理万机';
$string = '日$str';
var_dump($string);

//string '日$str' (length=7)


//2.双引号
$str = '久生情';
$string = "日{$str}啊";
var_dump($string);

//string '日久生情啊' (length=15)

单引号

注:单引号不能解析变量,如果非要使用单引号解析变量,可以使用英文状态下的点(.)与变量相连接。

$str = '理万机';
$string = '日'.$str.'啊';
var_dump($string);

//string '日理万机啊' (length=15)

双引号

双引号可以解析变量

注:在双引号中解析变量需要使用{}将变量括起来,告诉字符串,请当变量来解析,若不加括号会报错。这也是为什么上述双引号例子中直接用括号括住。

引号之间的互相嵌套

  • 单引号可以嵌套双引号,但是如果单引号要是嵌套单引号需要加转译斜线\转译
  • 双引号可以嵌套单引号,但是如果双引号要嵌套双引号需要加转译斜线\转译

实际中使用哪种符号

  1. 能用单引号就用单引号。毕竟双引号功能太多。
  2. SQL语句一般使用双引号(在数据库中学习)
  3. 大文章或者大数据的时候使用定界符。

定界符

  • 使用定界符,需要注意开头和结尾的书写格式.以<<<开始,后面跟一串自定义的字符
  • 书写完自定字符串时必须换一行内容
  • 写完内容时必须另起一行写结束符号
  • 结束符所在的行必须顶头写,而且后面不能有其他内容
  • 自定义字符串一般使用EOF (文件结尾end of file的意思)
  • 使用定界符定义,空格换行等都会保留下来并且可以解析变量。

你可能感兴趣的:(php04—数据类型3-字符串)