>백엔드 개발 >PHP 튜토리얼 >php sprintf()函数让你的sql操作更安全_PHP

php sprintf()函数让你的sql操作更安全_PHP

WBOY
WBOY원래의
2016-06-01 12:24:30771검색

$bookSQL=sprintf("UPDATE book SET pass=%s WHERE id=%d",
                              GetSQLValueString($_POST['list'], "text"),
                              GetSQLValueString($_GET['id'],"int"));

GetSQLValueString 这个函数,可以换成别的函数

但在sql语句这里用上sprintf()这个函数的话!就相对安全多了,比如id那里我们可以用上%d

或是有很多sql操作的时候,用上这个


$Result = $db->query($bookSQL) or die(mysql_error());


下面加上sprintf这个函数的说明:

引用
sprintf

将字符串格式化。

语法: string sprintf(string format, mixed [args]...);

返回值: 字符串

函数种类: 资料处理

内容说明

本函数用来将字符串格式化。参数 format 是转换的格式,以百分比符号 % 开始到转换字符为止。而在转换的格式间依序包括了

填空字符。0 的话表示空格填 0;空格是默认值,表示空格就放着。
对齐方式。默认值为向右对齐,负号表向左对齐。
字段宽度。为最小宽度。
精确度。指在小数点后的浮点数位数。
类型,见下表 % 印出百分比符号,不转换。
b 整数转成二进位。
c 整数转成对应的 ASCII 字符。
d 整数转成十进位。
f 倍精确度数字转成浮点数。
o 整数转成八进位。
s 整数转成字符串。
x 整数转成小写十六进位。
X 整数转成大写十六进位。 

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.