当前位置:首页 » 编程语言 » phpsql单引号
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

phpsql单引号

发布时间: 2022-09-08 11:39:51

❶ php中sql语句的单双引号问题

是这样的。双引号里的是解析的,也就是说整个$sql里的变量先被解析了,此时的单引号起的作用是告诉php sql解析器,这是一个值,如果你不加单引号的话,会执行不成功,因为php 解析器找不到sql语句里面的值。

❷ php 里面的SQL语句中怎么规范使用单引号,双引号

$sql = "INSERT INTO `database_name`.`table_name`(`field1`, `field2`) values('$field1', '$field2')";
这样最好了,规范,安全
'$field1' 这样是为了防止别人使用单引号等方式注入
当然使用$field1 这样的变量之前最好用mysql_escape_string(); 处理一下
然后再 mysql_query($sql);

❸ PHP中SQL语句中的字符串两端为什么要加单引号

$str_sql ="select * from tables where fileds ='".$value."'";这种写法的好处是如果$lvaue值不存在,会把它当成'' 空字符,也不会报错,这样更安全。

❹ mysql+php程序中sql语句中的引号使用方法,什么时候用双引号什么时候用单引号

这就要从双引号和单引号的作用讲起:
双引号里面的字段会经过编译器解释然后再当作HTML代码输出,但是单引号里面的不需要解释,直接输出。例如:
$abc='I love u';
echo $abc //结果是:I love u
echo '$abc' //结果是:$abc
echo "$abc" //结果是:I love u
所以在对数据库里面的SQL语句赋值的时候也要用在双引号里面SQL="select a,b,c from ..."
但是SQL语句中会有单引号把字段名引出来
例如:select * from table where user='abc';
这里的SQL语句可以直接写成SQL="select * from table where user='abc'"
但是如果象下面:
$user='abc';
SQL1="select * from table where user=' ".$user." ' ";对比一下
SQL2="select * from table where user=' abc ' "
我把单引号和双引号之间多加了点空格,希望你能看的清楚一点。
也就是把'abc' 替换为 '".$user."'都是在一个单引号里面的。只是把整个SQL字符串分割了。
SQL1可以分解为以下3个部分
1:"select * from table where user=' "
2:$user
3:" ' "
字符串之间用 . 来连接,这样能明白了吧。

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

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

$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 sql语句中传参的时候在参数外面加上单引号

这样写,自己都看到头晕。你可以这样写

$sql = "INSERT INTO base_object (base_type, creator, time_create, name, description, type)
VALUES (1, '$_SESSION[account][id]', NOW(), '$params[name]', '$params[description]', '$params[type]')";

这样写就可以了, 数据里面的KEY可以不加单引号,避免冲突