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大

相關文章
相關標籤/搜索