2.3PHP标量(Scalar)类型之字符串(string)

常规字符串,比如’string’、”string”;数值字符串,比如“888”。

1.单引号(”)字符串与双引号(“”)字符串的区别

区别一:单引号只支持单引号自身和反斜线自身的转义,而双引号除此之外还支持以下转义。

转义含义
\n换行(ASCII 字符集中的 LF 或 0x0A (10))
\r回车(ASCII 字符集中的 CR 或 0x0D (13))
\t水平制表符(ASCII 字符集中的 HT 或 0x09 (9))
\v垂直制表符(ASCII 字符集中的 VT 或 0x0B (11))
\eEscape(ASCII 字符集中的 ESC 或 0x1B (27))
\f换页(ASCII 字符集中的 FF 或 0x0C (12))
\\反斜线
\$美元标记
\"双引号
\[0-7]{1,3}符合该正则表达式序列的是一个以八进制方式来表达的字符,which silently overflows to fit in a byte (e.g. “\400” === “\000”)
\x[0-9A-Fa-f]{1,2}符合该正则表达式序列的是一个以十六进制方式来表达的字符
\u{[0-9A-Fa-f]+}匹配正则表达式的字符序列是 unicode 码位, 该码位能作为 UTF-8 的表达方式输出字符串

区别二:在单引号字符串中的变量将不会被解析,而用双引号定义的字符串最重要的特征是变量会被解析。

2.字符串内变量解析

当字符串用双引号或 heredoc 结构定义时,其中的变量将会被解析。

简单语法

$juice = "apple";

//直接插入变量法
echo "He drank some $juice juice.";

//用花括号来明确变量名的界线
echo "He drank some juice made of ${juice}s.";

复杂(花括号)语法

复杂语法不是因为其语法复杂而得名,而是因为它可以使用复杂的表达式。

$great = 'fantastic';

//只有 $ 紧挨着 { 时才会被识别
echo "This is {$great}";

3.访问和修改字符串中的字符

用类似 array 结构中的方括号包含对应的数字来访问和修改。

//正数字索引从左往右,从0开始。
$str = 'This is a test.';
$first = $str[0];
//负数字索引从右往左,从-1开始。
<?php
$string = 'string';
echo "The character at index -2 is $string[-2].", PHP_EOL;
$string[-3] = 'o';
echo "Changing the character at index -3 to o gives $string.", PHP_EOL;
?>
//输出
The character at index -2 is n.
Changing the character at index -3 to o gives strong.

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/php/phplang/10748.html

(0)
上一篇 2021年2月3日 19:47
下一篇 2021年2月4日 02:55

相关推荐

  • 5.2PHP语言的生成器(Generator)

    生成器提供了一种更容易的方法来实现简单的对象迭代。 相比较定义类实现 Iterator 接口的方式,相同的是调用生成器函数时会返回一个内部的 Generator 类的对象,该 Generator 类实现了 Iterator 接口。不同的是,生成器性能…

    PHP语言教程 2021年5月2日
    02550
  • 1.4PHP语言的分隔符(Separator)和运算符(Operator)

    1.指令分隔符 分号 ; 的作用是用来分隔语句的。 2.字符串运算符 运算符 名称 例子 结果 . 串接 $txt1 = “Hello” $txt2 = $txt1 . ” world!” 现在 $txt2 包含 “Hello world!” .=…

    PHP语言教程 2021年1月4日
    03240
  • 3.1PHP语言的命名空间(Namespace)

    什么是命名空间?从广义上来说,命名空间是一种封装事物的方法。在很多地方都可以见到这种抽象概念。例如,在操作系统中目录用来将相关文件分组,对于目录中的文件来说,它就扮演了命名空间的角色。具体举个例子,文件 foo.txt 可以同时在目录 /home/greg 和 /hom…

    PHP语言教程 2021年3月1日
    04060

发表评论

登录后才能评论