$sql="update a set b='$xx' "; $sql2="update a set b='".$xx."'";
此两个sql语句 中 如果变量$xx含有单引号 $sql执行成功$sql2出错 我测试发现 $sql中 $xx变量解析后 其中的单引号 会被加反斜杠 而$sql2中的单引号 不会被加反斜杠 原因就是这样 但是为什么了?我本以为 这两种写法 是一样的.求高人解答。
$sql="update a set b='$xx' "; $sql2="update a set b='".$xx."'";
此两个sql语句 中 如果变量$xx含有单引号 $sql执行成功$sql2出错 我测试发现 $sql中 $xx变量解析后 其中的单引号 会被加反斜杠 而$sql2中的单引号 不会被加反斜杠 原因就是这样 但是为什么了?我本以为 这两种写法 是一样的.求高人解答。
[code="java"]<?php
$xx = "aaa d'b";
$sql="update a set b='$xx' ";
echo $sql;
?>[/code]
输出结果
update a set b='aaa d'b'
所以这个php配置有关的,你可能在php.ini中配置了magic_quotes_gpc=on。