PHP——封装数据库的函数(增,删,改)2014.5.15的总结
2014-05-15 21:52
211 查看
[b]1:完整版的封装函数(增(insert),删(delete),改(update))[/b]
例:<?php
//编写数据库操作的封装函数
function mysql_bind(){
//首先我们不知道外面会传入多少个参数
//可以用func_get_args()方法来获取全部传入参数,这个方法返回全部参数的数组
//和func_get_args()方法相对应的其实还有一个func_num_args()来获取参数个数
$args = func_get_args();
//通过使用array_shift方法,使传入的第一个参数,后后面的参数分开,其实就是把sql语句,和
//后面传入的值分开,使用了array_shift方法,可以返回一个字符串,这个字符串就是sql语句
//后面剩下的数组就是要传入的值
//sql语句
$sql = array_shift($args);
//重新复制给一个数组
$value = $args;
//替换$sql语句中的?,使用str_replace函数
$sql = str_replace("?","'%s'",$sql);
//把替换好的$sql语句,通过vsprintf函数,把值填入进去
$sql = vsprintf($sql,$value);
//截取$sql语句前面的关键字,其实就是select,insert,update,delete
$begin = substr($sql,0,6);
注意: //explode(" ",$sql)[0]; //这种写法在PHP5.4之前是不支持的
$conn = mysql_connect("localhost","root","") or die(mysql_error());
mysql_select_db("bbs",$conn);
mysql_query("set names 'utf8'");
$result = mysql_query($sql) or die(mysql_error());
if(strcasecmp($begin,"insert") == 0){
//如果插入成功,那么肯定有一个最新的id,所以这个id不等于0的话,证明插入成功,否则失败
return mysql_insert_id();
} else if(strcasecmp($begin,"update") == 0){
//mysql_affected_rows()表示几行受影响,成功,肯定是大于0,否则失败
return mysql_affected_rows();
} else if(strcasecmp($begin,"delete") == 0){
//mysql_affected_rows()表示几行受影响,成功,肯定是大于0,否则失败
return mysql_affected_rows();
} else{
//为了将查询的内容返回回去
//首先申明一个空的数组,然后,这个空的数组,每次循环,都将$row赋值给他
//相当于这个数组就形成了一个二维数组
$arr = array();
while($row=mysql_fetch_array($result)){
$arr[] = $row; //
array_push($arr,$row);
}
return $arr;
}
}
?>
[b]2:strcasecmp:比较两个数谁大谁小和是否相等(计算法:二进制)[/b]
例:strcasecmp("ab","ac")
ac比ab大
例:<?php
//编写数据库操作的封装函数
function mysql_bind(){
//首先我们不知道外面会传入多少个参数
//可以用func_get_args()方法来获取全部传入参数,这个方法返回全部参数的数组
//和func_get_args()方法相对应的其实还有一个func_num_args()来获取参数个数
$args = func_get_args();
//通过使用array_shift方法,使传入的第一个参数,后后面的参数分开,其实就是把sql语句,和
//后面传入的值分开,使用了array_shift方法,可以返回一个字符串,这个字符串就是sql语句
//后面剩下的数组就是要传入的值
//sql语句
$sql = array_shift($args);
//重新复制给一个数组
$value = $args;
//替换$sql语句中的?,使用str_replace函数
$sql = str_replace("?","'%s'",$sql);
//把替换好的$sql语句,通过vsprintf函数,把值填入进去
$sql = vsprintf($sql,$value);
//截取$sql语句前面的关键字,其实就是select,insert,update,delete
$begin = substr($sql,0,6);
注意: //explode(" ",$sql)[0]; //这种写法在PHP5.4之前是不支持的
$conn = mysql_connect("localhost","root","") or die(mysql_error());
mysql_select_db("bbs",$conn);
mysql_query("set names 'utf8'");
$result = mysql_query($sql) or die(mysql_error());
if(strcasecmp($begin,"insert") == 0){
//如果插入成功,那么肯定有一个最新的id,所以这个id不等于0的话,证明插入成功,否则失败
return mysql_insert_id();
} else if(strcasecmp($begin,"update") == 0){
//mysql_affected_rows()表示几行受影响,成功,肯定是大于0,否则失败
return mysql_affected_rows();
} else if(strcasecmp($begin,"delete") == 0){
//mysql_affected_rows()表示几行受影响,成功,肯定是大于0,否则失败
return mysql_affected_rows();
} else{
//为了将查询的内容返回回去
//首先申明一个空的数组,然后,这个空的数组,每次循环,都将$row赋值给他
//相当于这个数组就形成了一个二维数组
$arr = array();
while($row=mysql_fetch_array($result)){
$arr[] = $row; //
array_push($arr,$row);
}
return $arr;
}
}
?>
[b]2:strcasecmp:比较两个数谁大谁小和是否相等(计算法:二进制)[/b]
例:strcasecmp("ab","ac")
ac比ab大
相关文章推荐
- php数据库常用函数的封装
- php封装的数据库函数与用法示例【参考thinkPHP】
- 使用PHP mysqli 扩展增强库(面向对象/数据库操作封装/事务控制/预编译)总结
- php中有关操作数据库安全的几个函数总结
- php的正则处理函数总结分析
- PHP中对数据库操作的封装
- PHP中对数据库操作的封装
- php 中的str_replace 函数总结
- [ASP/PHP/JSP]MySQL5.0中文问题及JDBC数据库连接和JSP汉字编码问题解决方法总结
- PHP数组函数总结
- PHP中对数据库操作的封装
- 基于php常用函数总结(数组,字符串,时间,文件操作)
- Flash cs3、Flex与asp、php通信总结(包含数据库) 作者:wolf2777 类型:闪吧BBS 来源:闪吧
- 数据库三个函数总结
- php变量处理函数总结
- PHP - Manual手册 - Function Reference函数参考 - Database Extensions数据库扩展 - Vendor Specific Database Extensions特定提供商数据库扩展 - MySQL - MyS
- php+odbc+access 数据库操作函数,在windows下测试通过
- php的正则处理函数总结分析
- PHP 下与几个常用数据库的操作函数
- php中几个常用的数据库查询函数