PHP——封装数据库的函数(增,删,改)2014.5.15的总结

1:完整版的封装函数(增(insert),删(delete),改(update))php

    例:<?phpmysql

        //编写数据库操做的封装函数算法

        function mysql_bind(){sql

          //首先咱们不知道外面会传入多少个参数    数据库

          //能够用func_get_args()方法来获取所有传入参数,这个方法返回所有参数的数组  数组

           //和func_get_args()方法相对应的其实还有一个func_num_args()来获取参数个数   函数

            $args = func_get_args();fetch

            //经过使用array_shift方法,使传入的第一个参数,后后面的参数分开,其实就是把sql语句,和    spa

        //后面传入的值分开,使用了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;    

    }

}

?>

2:strcasecmp:比较两个数谁大谁小和是否相等(计算法:二进制)

    例:strcasecmp("ab","ac")

        ac比ab大

相关文章
相关标签/搜索