php里sql语句中单引号的解析问题

/*

对于初学php,很多数据中给出的关于引号的解释都是这样的:
单引号(''):不会对引号中的变量进行解析;
双引号(""):会对引号中的变量进行解析;

*/

# 看一个小例子:
$str = "Hello"; # 此处的("")我们只单纯的定义为字符串

echo "$str"; # (1)
echo '$str'; # (2)

# 下面是(1)的输出结果
# => Hello

# 下面是(2)的输出结果
# => $str

# 上面的小例子只是单双引号的一个小用法

# 下面是我在学习中一个疑惑:
$id = 18;
$sql = "select * from table where id='$id'";

# 上面的字符串在php中处理结果让我疑惑;
# 实际php的解析结果是:
# $sql = "select * from table where id='18'";

# 有点晕了, 额 不是说单引号,不做解析吗?下面做一个测试:

echo "'$id'"; # => 18

# 由例子可以看出 实际上php先对双引号里的变量进行解析,然后在处理其中的单引号

 

posted on 2016-11-30 15:06  源人  阅读(378)  评论(0)    收藏  举报

导航