PHP四种定义字符串的方法 PHP定义字符串4种方法有哪些?
- 2022年6月6日
- 1,185 次
字符串是PHP中的8大数据类型之一,在实际的编程中是比较常用的数据类型,而字符串在其他编程语言例如Python、Java、C等编程语言中也是比较常用的数据类型,可见在诸多的编程语言中,字符串还是一种比较重要的数据类型。那么在PHP中怎么定义字符串呢?PHP定义字符串的方法又有哪些呢?以下是今日学习的PHP四种定义字符串的方法的学习笔记。
PHP四种定义字符串的方法主要有单引号、双引号、heredoc和nowdoc四种方法。下面依次来看看他们是如何定义字符串的,以及四种定义字符串方法他们之间有什么相同之处和不同之处。
PHP字符串的四种类型
一、单引号'';
echo '我叫李涛';echo '<hr>';
echo 'I\'m a owner';
echo '我叫李涛';echo '<hr>';
echo 'I\'m a owner';1、单号中的字符串如果出现了单引号则需要用转移字符\对单引号内的单引号进行转义。
2、单引号中的特殊符号:具有特殊含义或者不可见的控制符:
如:\r、\n、\t、\$
3、如果只能输出反斜线,不需要转义反斜线:
可以用\将本身进行转义就可以了。
4、单引号的用法总结:
(1)、单引号可以声明普通的字符串:
echo 'my name is li tao';
(2)、单引号只能转义单引号和反斜线:
echo 'E:\www.leetao.cc\\fabu';
(3)、单引号不能解析变量,如果在单引号内输出变量的话就会原样输出变量名,并不能输出变量所赋予的变量值:
$name = '我叫李涛';
echo '$name';
二、双引号"";
1、双引号可以声明普通的字符串:
echo "我叫李涛";
2、当双引号中再次出现双引号的时候需要对双引号内的双引号进行转义处理,如果不进行转义处理会报语法错误:
echo "我叫李涛,\"我来自湖北\"";
3、双引号中的特殊字符会被解析:
echo "c:\temp\str.php"
上例中的双引号中的双引号中的\temp中的\t如果不对\t进行转义就会被解析掉,PHP解释器就会认为这是一个\t制表特舒服进行处理,所以这时我们就要对这个特殊字符进行转义处理。正确的处理如下:
echo "c:\\temp\str.php"
4、双引号内的变量会被解析:
$name = '李涛';
echo "我的名字是$name";
5、双引号的用法总结:
(1)、双引号可以声明一个普通的字符串;
(2)、双引号可以转义全部的特殊字符;
(3)、双引号可以解析双引号内的变量;
三、heredoc 用法
1、heredoc用法和双引号的用法的相似点:
(1)、heredoc和双引号都可以声明普通的字符串;
(2)、heredoc和双引号都可以解析变量;
(3)、heradoc和双引号都可以将解析特殊字符;
2、heredoc用法和双引号的用法的不同点:
(1)、heredoc和双引号用法的不同点在于处理双引号的区别:
如果heredoc代码中如果包含有双引号的话不需要对双引号进行转义就可原样输出,如果heredoc中对双引号进行转义就会报错,而双引号中如果不对双引号内的双引号进行转义的话会报错。
(2)、heredoc和双引号正确处理内部的双引号:
heredoc内包含有双引号,不需要对双引号进行转义处理,否则会报错。
双引号中的字符串包含有双引号,需要对双引号进行转义处理,否则会报错。
3、heredoc的语法结构:
heredoc以三个<开始,然后用""在""内部定义一个变量名,在最后还需将这个变量名写出来,以下是heredoc的实例:
echo <<< "EDO"
我的名字叫"李涛"
EDO;
四、nowdoc用法
nowdoc和单引号的用法基本上是一样的,最主要的区别和heredoc与双引号的区别是一样的,主要是在处理单引号的区别。
1、nowdoc和单引号的区别:
(1)、nowdoc内如果有单引号的时候,不需要对内部的单引号进行转义,如果对单引号进行转义将报错。
(2)、单引号内如果有单引号的时候,需要对单引号内部的单引号进行转义处理,如果不对单引号内部的单引号进行转义处理代码将会报错。
2、nowdco的语法格式:
nowdoc的语法格式和heredoc的语法格式大致一样,唯一不一样的是heredoc用的是"",而nowdoc用的是''。具体实例如下:
echo <<< 'EDO'
我的名字叫 '李涛'
EDO;
以上就是今天PHP学习的关于《PHP四种定义字符串的方法 PHP定义字符串4种方法有哪些?》的内容。
若非作者标注皆为李涛自留地原创文章,转载或复制请以超链接形式并注明出处。
- IT男的兴奋点是什么? 2021-01-03
- 宝塔面板网站502 Bad Gateway报错的N种原因和解决方法 2026-07-02
- PHP数组常用函数之删除新增元素的函数用法及实例代码 2022-10-25
- PHP三元运算符和is…else的区别和不同之处 2022-06-20
- PHP构造方法使用学习笔记 PHP构造方法实例代码 2022-12-03
- PHP常用字符串函数删除字符串空白符函数用法及实例 2022-10-18
