php中的单引号、双引号和转义字符

PHP单引号及双引号均可以修饰字符串类型的数据,如果修饰的字符串中含有变量(例$name);最大的区别是: 双引号会替换变量的值,而单引号会把它当做字符串输出。

例如:

<?php

         $name="string";

        echo  " 字符串" . ‘$name‘;

        echo   "字符串" .  "$name"; 

?>

结果:

         字符串$name

         字符串string

转义字符,顾名思义会将规定的语法用"\"来输出。但语法规定在不同的系统中转义字符的作用不同,例如:windows下的回车换行符用"\r"或"\n",而Linux 这两就有很大的区别:"\r"光标回到行首,但还在本行; "\n"表示下一行,不会回到行首。

PHP中的转义字符有:       

                                            " \n" ==>换行               

                                             "\r"==>回车           

                                             "\t"==>水平制表符       

                                             "\\"==> 反斜杠

                                            "\$" ==>美元符号    

                                              " \‘ "==>单引号     

                                              " \" " ==>双引号 

                                              " \[0-7]{1,3}  "            正则表达式匹配一个八进制符号表示的字符

                                             " \x[0-9A-Fa-f]{1,2} "    正则表达式匹配一个十六进制符号表示的字符

在PHP中,可以使用 echo() 和 print() 语句发送数据到Web浏览器,也可以使用它们发送HTML 代码到Web浏览器。从技术上讲,echo() 和 print() 是语言构造,而不是函数,这里用了一对括号,从而有助于与变量以及PHP的其他部分区分开。这两个语句本质上没有什么区别,因此用那一个都不会产生任何问题。这依个人习惯。它们不区分大小字。

在PHP中,理解单引号与双引号有什么区别是重要的。当所发送的数据中涉及到单引号和双引号时,在打印双引号时使用单引号,反之亦然,如:

echo She said,"How are you?";

print "I‘m just ducky.";

或者,通过在有问题的字符前面放置一个反斜杠,对它进行转义:

echo "She said,\"How are you?\" ";

print ‘I\‘m just ducky.‘;

在PHP中,封闭在单引号内的值将照字面意义进行处理,而封闭在双引号内的值则将被解释。换句话说,把变量和特殊字符(见表1)放在双引号内将导致打印出它们所表示的值,而不是它们的字面值。如:

$var = ‘test‘;

代码echo "var is equal to $var"; 将打印出 var is equal to test,而代码echo ‘var is equal to $var‘; 将打印出var is equal to $var。使用一个转义的美元符号,代码echo"\$var is equal to $var"; 将打印出$var is equal to test,而代码echo ‘\$var is equal to $var‘; 将打印出\$var is equal to $var。

表1 当在双引号内使用这些字符时,它们具有特殊的含义

转义字符代码 转义字符的含义
\ " 双引号
\ ‘ 单引号
\ \ 反斜杠
\ n 换行符
\ r 回车符
\ t 制表符
\ $ 美元符号

正如以上例子所说明的,双引号将用变量的值(test)代替它的名称($var),并用特殊字符表示的值($)代替它的代码(\$)。单引号总是准确地打印你输入的内容,除了转义的单引号(\‘)和转义的反斜杠(\\)之外,它们将分别被打印为一个单引号和一个反斜杠。

提示:

1、由于PHP将试图找出那些需要将其值插入到双引号内的变量,所以从理论上讲,使用单引号要快一些。但是,如果需要打印一个变量的值,则必须使用双引号。

2、因为有效的HTML常常包括许多用双引号括住的属性,所以当利用PHP打印HTML时,使用单引号最容易。

echo ‘<table width="200" border="1" cellspacing="5" cellpadding="2" align="center">‘;

如果想使用双引号打印出上面这段HTML代码,将不得不对字符串中的所有双引号进行转义,所以相对来说较麻烦。

时间: 2024-11-08 19:18:34

php中的单引号、双引号和转义字符的相关文章

Linux Shell中反引号``, 单引号&#39;&#39;, 双引号&quot;&quot;, $混用总结

用一个小程序(argv.py)来演示下: #!/usr/local/bin/python3 import sys print('sys.argv has these', len(sys.argv), 'elements:', sys.argv) 运行与结果: # 首先是赋予执行权限 chmod 755 argv.py #1 一个空格一个命令行参数 ./argv.py I love Shell scripting. sys.argv has these 5 elements: ['./argv.p

Linux中的元字符和转义符 单引号 硬引号 双引号 软引号

Linux中的元字符和转义符  单引号  硬引号  双引号  软引号 Linux就这个范儿 Linux就这个范儿 P182单引号:硬引号,所有元字符特殊意义都会关掉双引号:软引号,只允许出现特定元字符,对特殊字符会进行解析 元字符

JS中单引号/双引号以及外部js引入的一些问题

一.单引号和双引号的用法的问题 在JavaScript中可以使用单引号.双引号,二者也可以混合使用.但是,身为菜鸟的我,却碰到了一些引号的使用问题. <body> <div style="border:1px solid red; height:150px;width:150px;" onclick="alert("test");" id="test">This is a test. </div&

php echo输出html标签时但引号双引号交替使用技巧

如<dt onClick='subtest("test")'>这里面会有引号交替,如果仅仅简单的使用<?php echo "<dt onClick='showHide("items2_1")'>";?>肯定会报错的.用下面办法就可以解决,在引号前面加反斜杠用来区分: <?php echo "<dt onClick='showHide(\"items2_1\")'>

调用js函数时,参数带单、双引号怎么解决?

单引号    ' ----------> ' 例子: 这是一个 html 节点属性值中使用到  ' 仍然是用来表示 ' 实体 onchange="javascript:setTimeout('abc(\'a\',\'\')', 0)" 等价于 onchange="javascript:setTimeout('abc(\'a\',\'\')', 0)" 除html/xml中表示单引号外, 在某些情况为了防止数据库注入等安全问题. 双引号    " --

对于表单中单双引号问题

1.表单中录入单双引号,将内容通过post传入到后台后,将数据进行转义存入数据库 foreach($_POST as $k => $v){ $_POST[$k] = addcslashes($v,"'\""); } 2.从数据库中取出来显示到页面中,例如那种修改页面的显示,value=“”这样单双引号又是问题,处理如下 value="<?php echo str_replace('"', '"', str_replace("

latex中如何正确输入 双引号

latex中输入双引号时,如果都直接用键盘上的双引号键,打出的是一顺撇的.左面引号的正确输入法是:按两次"Tab上面,数字1左面那个键".至于后边的引号,与老方法是一样的,即按两次单引号键(或一次SHIFT+单引号键---也就是一次双引号键啦怎么输入左单引号.左双引号.右单引号.有双引号?左单引号:`(键盘上1旁边的那个):左双引号:``:右单引号:'(键盘分号的右边那个):右双引号:''或".在普通模式下,''和"是一样的:但在数学模式下,''是两个导数符号.

C语言中 单引号与双引号的区别

在C语言中,字符用单引号,字符串用双引号.在c1='a';中,'a'是字符常量,必须用单引号."a"表示字符串,包含两个字符,一个是'a',一个是'\0'. 用数组来存储字符串. int main() { char ch[2] = "A"; } 简言之,单引号是一个字符,,双引号是字符串, 原文地址:https://www.cnblogs.com/654321cc/p/9266101.html

PHP json字符串对特殊字符处理(单引号,双引号)

前言:form表单用POST,GET等方式提交数据到后台,后台用PHP接收 提交的数据含有 """."'","\"(双引号,单引号,反斜线),新版PHP(magic_quotes_gpc 在php.ini 设置为ON时,自动addslashes()进行转义.5.3废弃,5.4移除,都需要自己用addslashes()进行转义)都需要自己用addslashes()添加转义. PHP接受的form表单提交过来的数据,需先用stripcsla

Python 基础 (单、双引号区别) 不断补充

最近开始学习Python ,一些小细节的东西不是很理解,所以就记录一下,方便自己以后查看. 我的Python环境: Mac pro 10.12.3,Python3.5 ,Pycharm 多句题外话:公司的同事都是Windows开发Python,然后在使用Linux进行配置,由于Mac上默认是python2.7.10的版本,要想开发Python还得需要在Mac多装一个版本的Python,当然也可以用Python自带的进行开发.由于我使用Python3.5.0,所以踩了许多坑,重点是设置环境变量的时