您的位置:首页 > 编程语言 > PHP开发

PHP数据类型 之 字符串

2018-02-06 16:04 288 查看
字符串有4种表达方式:单引号、双引号、heredoc语法结构、nowdoc语法结构

1、单引号

// 输出: You deleted C:\*.*?
echo  'You deleted C:\\*.*?' ;          // 要表达一个反斜线自身,则用两个反斜线(\\)。

// 输出: You deleted C:\*.*?
echo  'You deleted C:\*.*?' ;

// 输出: This will not expand: \n a newline
echo  'This will not expand: \n a newline' ;


2、双引号

如果字符串是包围在双引号(”)中, PHP 将对一些特殊的字符进行解析;

3、heredoc语法结构

3-1、 Heredoc 结构就象是没有使用双引号的双引号字符串:单引号不用被转义、转义序列还可以使用、变量将被替换;

3-2、结束时所引用的标识符必须在该行的第一列,而且,标识符的命名也要像其它标签一样遵守 PHP 的规则:只能包含字母、数字和下划线,并且必须以字母和下划线作为开头。

4、Nowdoc 结构:Nowdoc 结构是类似于单引号字符串的

echo <<<'EOT'
My name is "$name". I am printing some $foo->foo.
Now, I am printing some {$foo->bar[1]}.
This should not print a capital 'A': \x41
EOT;


5、复杂(花括号)语法

$great  =  'fantastic' ;
$arr = ['d'=>'d','key'=>'key'];
echo  "This is {  $great }" ;       //This is { fantastic }
echo  "This is {$great} <br>";      //This is fantastic
echo  "This is  { $great } "."<br>" ;   //This is { fantastic }
echo  "This is  ${great} "."<br>";      //This is fantastic
echo  "This works:  {$arr [ 'key' ]} " ;        //花括号需与变量名称紧挨着,否则会报错


6、字符串转换为数值

// 如果该字符串以合法的数值开始,则使用该数值。否则其值为 0(零)。
$foo  =  1  +  "10.5" ;                 // $foo is float (11.5)
$foo  =  1  +  "-1.3e3" ;               // $foo is float (-1299)  指数部分由 'e' 或 'E' 后面跟着一个或多个数字构成。即是10的倍数
$foo  =  1  +  "bob-1.3e3" ;            // $foo is integer (1)
$foo  =  1  +  "bob3" ;                 // $foo is integer (1)
$foo  =  1  +  "10 Small Pigs" ;        // $foo is integer (11)
$foo  =  4  +  "10.2 Little Piggies" ;  // $foo is float (14.2)
$foo  =  "10.0 pigs "  +  1 ;           // $foo is float (11)
$foo  =  "10.0 pigs "  +  1.0 ;         // $foo is float (11)


7、字符串即是一个数组

string的实现方式是:由字节组成的数组再加上一个整数指明缓冲区长度。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: