很多站长朋友们都不太清楚php双引号怎么用,今天小编就来给大家整理php双引号怎么用,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 PHP中的双引号和单引号的应用 2、 单引号和双引号在PHP代码中用法有什么不同 3、 我一直对php 哪里用单引号 哪里用双引号 和怎么用 请细说下 谢谢哈 4、 php 的单引号和双引号的用法 5、 PHP字符串单引号双引号php定界符的都怎么用 6、 php怎么输出双引号 PHP中的双引号和单引号的应用无论是书写
JavaScript
还是
PHP,总习惯于使用单引号。但周末在家
coding
的时候碰到个问题,需要通过
PHP
过滤字符串中的换行符,按照下面的方法操作:
$out
=
str_replace(array('rn',
'r',
'n'),
'',
$out);PHP
提供三种定义字符串的方法:单引号、双引号、本地文档(英文叫做
here
document
或者
heredoc)。
单引号:
使用单引号是最高效的方法,因为
PHP
不会检查单引号字符串中的内置变量和转义序列,需要转义的字符只有反斜杠和单引号本身。
双引号:
会检查内置变量和转义序列,但不能识别转义的单引号。这也正说明了开始那段代码的错误之处,正确的做法是使用双引号来定义换行的转义序列:
$out
=
str_replace(array("rn",
"r",
"n"),
'',
$out);本地文档:
检查所有的内置变量和转义序列,双引号无需转义。例如:
echo
<<
this
is
a
"here
document"
example.
just
for
test.
EOT;简单记录下,加深印象。
单引号和双引号在PHP代码中用法有什么不同在PHP中,字符串的定义可以使用单引号,也可以使用双引号。但是必须使用同一种单或双引号来定义字符串,如:‘Hello"和“Hello'为非法的字符串定义。
定义字符串时,只有一种引号被视为定义符,即单引号或双引号。于是,如果一个字符串由双引号开始,那么只有双引号被分析器解析。这样,就可以在双引号串中包含任何其他字符,甚至单引号。下面的引号串都是合法的:
$s = "I am a 'single quote string' inside a double quote string";
$s = 'I am a "double quote string" inside a single quote string';
$s = "I am a 'single quote string' inside a double quote string";
$s = 'I am a "double quote string" inside a single quote string';
PHP允许我们在双引号串中直接包含字串变量,单引号串和双引号串在PHP中的处理是不相同的。双引号串中的内容可以被解释而且替换,而单引号串中的内容总被认为是普通字符。例如如下代码:
$foo = 2;
echo "foo is $foo"; // 打印结果: foo is 2
echo 'foo is $foo'; // 打印结果: foo is $foo
echo "foo is $foo\n"; // 打印结果: foo is 2 (同时换行)
echo 'foo is $foo\n'; // 打印结果: foo is $foo\n
$foo = 2;
echo "foo is $foo"; // 打印结果: foo is 2
echo 'foo is $foo'; // 打印结果: foo is $foo
echo "foo is $foo\n"; // 打印结果: foo is 2 (同时换行)
echo 'foo is $foo\n'; // 打印结果: foo is $foo\n
在单引号串中甚至反斜杠也失去了他的扩展含义(除了插入反斜杠\\和插入单引号\')。所以,当想在字串中进行变量代换和包 含\n(换行符)等转义序列时,应该使用双引号。单引号串可以用在其他任何地方,脚本中使用单引号串处理速度会更快些,因为PHP语法分析器对单引号串 的处理方式比较单纯,而双引号的处理由于串内部也需要解析,因此更复杂些,所以处理速度略慢。 技术问题可到itjob技术交流群交流
我一直对php 哪里用单引号 哪里用双引号 和怎么用 请细说下 谢谢哈如果双引号中没有php变量,就改用单引号
比如:
echo "abc";
是向页面单纯的打印出abc三个字母,而引号内没有任何php变量,那么为了php的优化,就把他改成单引号:
echo 'abc';
再比如:
$a = 123456;
echo "数字是:$a";
由于引号内有变量需要php来编译,那么这个时候就要用双引号
输出 :数字是123456
如果你写成
echo '数字是:$a';
那么就会输出 :数字是:$a
这是因为没有使用双引号,php不会去编译里面的变量
当然,也不是说一定要用双引号,用单引号的话,要改一下
echo '数字是:' . $a;
或者:
echo '数字是:', $a;
其实php中可以全部使用单引号,无论有没有变量,使用双引号,就是图个碰到字符串中有变量的时候省事点而已
php 的单引号和双引号的用法$test1 = "PHP";
1:echo "互联网最流行的技术$test1" //输出 互联网最流行的技术PHP
2:echo '互联网最流行的技术$test1' //输出 互联网最流行的技术$test1
上面两个例子说明,双引号里面的变量,会当作变量解释,单引号里面的变量会直接当作字符串来处理,就是说,在单引号里面的变量会失去其变量的性质,变成一个字符串。
如果想用第一句的方法输入第二句的结果,加转义符号啊
3:echo "互联网最流行的技术\$test1" //输出 互联网最流行的技术$test1
4:echo "互联网最流行的技术$test1技术" //本来是想输出 互联网最流行的技术PHP技术,但是你发现,告诉你,找不到变量$test1技术,因为没有加空格,所以它把后面所有的都当成一个变量了。
所以你会发现,很多优秀的作品,都推荐使用''单引号来写变量,除非里面是SQL语句。就是防止这类的错误。至于为什么SQL除外,你可以自己想一下!
PHP字符串单引号双引号php定界符的都怎么用单引号引起来的就是字符串,此时就算里面有变量也不会解析;而双引号是会解析变量的。也就是说单引号是输出纯字符串,双引号会输出字符串和变量。界定符就是哪里有php代码就把哪里包起来就好了。
php怎么输出双引号var_dump('a"b'); //外层是单引号,好办
var_dump("a\"b"); //外层是双引号,用转义
var_dump("a\x22b"); //用16进制表示
var_dump("a".chr(34)."b"); //用php的字符输出函数chr
var_dump("a #x22;b"); //用htm实体表示,注意只有给浏览器输出才有效;和#中间没有空格, 连在一起写被百度解析了
关于php双引号怎么用的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php双引号怎么用 php 引号的详细内容...