189 8069 5689

php数据库单引号 php中单引号和双引号所包围的字符串有什么区别

php操作mysql数据库时,双引号单引号,花括号如何运用?感觉有些混乱

单引号,单引号中的内容会被直接当成一个字符串,单引号中无法输出变量值;

万州网站制作公司哪家好,找创新互联公司!从网页设计、网站建设、微信开发、APP开发、响应式网站建设等网站项目制作,到程序开发,运营维护。创新互联公司2013年开创至今到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联公司

$a = 'abcd';

echo '$a';    // 输出结果就是 $a,而不是 abcd

双引号,双引号中可以输出简单变量,不能输出复杂变量,否则会报错;

$a = 'abcd';

$b = array('aaa' = 'abcd');

echo "$a";    // 输出 abcd,因为双引号中可以解析简单变量

echo "$b['aaa']";    // 直接报错,因为双引号中不能解析复杂变量

花括号,花括号中既可以输出简单变量,也可以输出复杂变量,如数组、对象等;

$a = 'abcd';

$b = array('aaa' = 'abcd', 'bbb' = array(12,34));

echo "{$a}";    // 输出 abcd

echo "{$b['aaa']}";    // 输出 abcd

echo "{$b['bbb'][1]}";    // 输出 34

所以写的时候想偷懒就用花括号,不会出错;

但是在性能上,单引号的性能最好,因为单引号中的内容会直接被当成字符串,没其他的解析;而解析双引号的时候,会先判断双引号内有没有变量,有变量就把变量用变量值代替,最后再输出双引号内整个的内容;花括号就更不用说了,可以输出复杂的变量内容。

所以一般如果项目没有性能要求的话或者小项目的话,随便怎么用没关系;但是大网站或者要求性能的网站就得视情况挑着用了

php操作MySQL中单引号与怎么处理?

花括号,花括号中既可以输出简单变量,也可以输出复杂变量,如数组、对象等;

1.$a = 'abcd';2.$b = array('aaa' = 'abcd', 'bbb' = array(12,34));3.echo "{$a}"; // 输出 abcd4.echo "{$b['aaa']}"; // 输出 abcd5.echo "{$b['bbb'][1]}"; // 输出 34

所以写的时候想偷懒就用花括号,不会出错;

但是在性能上,单引号的性能最好,因为单引号中的内容会直接被当成字符串,没其他的解析;而解析双引号的时候,会先判断双引号内有没有变量,有变量就把变量用变量值代替,最后再输出双引号内整个的内容;花括号就更不用说了,可以输出复杂的变量内容。

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语法分析器对单引号串 的处理方式比较单纯,而双引号的处理由于串内部也需要解析,因此更复杂些,所以处理速度略慢。

php 单引号和双引号的区别

1、变量。双引号解释变量,单引号不解释变量;双引号里插入单引号,其中单引号里如果有变量的话,变量解释;

2、字符。双引号解释转义字符,单引号不解释转义字符,但是解释'\和\;

3、效率。能使单引号字符尽量使用单引号,单引号的效率比双引号要高(因为双引号要先遍历一遍,判断里面有没有变量,然后再进行操作,而单引号则不需要判断)。

扩展资料: 

一般情况下两者是通用的。但双引号内部变量会解析,而单引号则不解析。

PHP允许我们在双引号串中直接包含字串变量。

而单引号串中的内容总被认为是普通字符,因此单引号中的内容不会被转义效率更高。

比如:

$str = 'hello world';

echo "str is $str"; //运行结果: str is hello world

echo 'str is $str'; //运行结果: str is $str


名称栏目:php数据库单引号 php中单引号和双引号所包围的字符串有什么区别
标题来源:http://cdxtjz.cn/article/ddcojps.html

其他资讯