php中单引号与双引号的区别:双引号里面的字段会经过编译器解释,然后再当作HTML代码输出;单引号里面的字段不进行解释,会直接输出。单引号不需要考虑变量的解析,速度比双引号快。
在PHP中,我们可以使用单引号或者双引号来表示字符串。不过我们作为开发者,应该了解其中的区别。
1、对内容的解析不同
""双引号里面的字段会经过编译器解释,然后再当作HTML代码输出。
''单引号里面的字段不进行解释,会直接输出。【相关推荐:PHP教程】
<?php $age = 20; $str1 = 'I am $age years old'; $str2 = "I am $age years old"; echo $str1,'<br />'; // I am $age years old echo $str2,'<br />'; // I am 20 years old; ?>
2、解析速度不同
单引号不需要考虑变量的解析,速度比双引号快。推荐用单引号,有的时候双引号也比较好用,比如在拼凑sql 语句
反斜杠
//使用单引号 echo ' this \n is \r the blog \t of \\ zhoumanhe \\'; //上面使用单引号输出的值是 this \n is \r the blog \t of \ zhoumanhe \ echo ''; echo ""; //使用双引号 echo "this \n is \r the blog \t of \\ zhoumanhe \\"; //上面使用双引号输出的值是 this is the blog of \ zhoumanhe \
使用sql
假设查询条件中使用的是常量,例如:
select * from abc_table where user_name='abc';
SQL语句可以写成:
SQLstr = “select * from abc_table where user _name= ‘abc'” ;
假设查询条件中使用的是变量,例如:
$user_name = $_REQUEST['user_name']; //字符串变量
或
$user=array (”name”=> $_REQUEST['user_name‘,"age"=>$_REQUEST['age'];//数组变量
SQL语句就可以写成:
SQLstr = “select * from abc_table where user_name = ‘ ” . $user_name . ” ‘ “; SQLstr = “select * from abc_table where user_name = ‘ ” . $user["name"] . ” ‘ “;
对比一下:
SQLstr=”select * from abc_table where user_name = ‘ abc ‘ ” ; SQLstr=”select * from abc_table where user_name =' ” . $user _name . ” ‘ “; SQLstr=”select * from abc_table where user_name =' ” . $user["name"] . ” ‘ “;
SQLstr可以分解为以下3个部分:
1:”select * from table where user_name = ‘ ” //固定SQL语句
2:$user //变量
3:” ‘ ”
PHP引号使用原则
1.字符串的值用引号
2.PHP中尽量用单引号,HTML代码全部用双引号
3.在包含变量的时候,用双引号可以简化操作
4.复杂的情况下用大括号包起来
PHP引号还有一个用处就是,有的时候需要用php生成文本文件,换行符\n需要用双引号才能好使,单引号则会直接把\n当成字符输出。
以上就是php中单引号与双引号有什么区别?的详细内容,更多请关注php中文网其它相关文章!