Before using this class, you can popularize two points of knowledge:
Static calls are used in PHP. Different from other programming languages, its static calls are:
Class Name::$static property
Class name::static method()
And programming languages such as Java and C# all use:
class Name.Static property
Class name.Static method()
Advantages of static methods:
(1) Can be used anywhere in the code, no You need an instance object to access static properties or methods;
(2) Each instance of a class can access the static properties defined in the class. You can use static properties to set values, which can be used by all members of the class. The use of objects facilitates the control of database parameters and the creation and closing of connection objects;
DBHelper.php static tool class
<?php /**该PHP文件为了连接数据库方便 * 为连接数据库提供静态方法 */ header("Content-type: text/html;charset=utf-8"); class DBHelper { static $sqlName = "127.0.0.1"; static $userName = "root"; static $passWord = "123456"; static $dbName = "test"; //连接数据库 static function dbConn() { $conn = mysqli_connect(self::$sqlName, self::$userName, self::$passWord, self::$dbName); if ($conn == false) { echo "<script>alert('数据库连接失败')</script>"; } //设置连接对象编码 mysqli_query($conn, "set names utf8"); return $conn; } //查询数据 //param1:查询类型,param2:执行语句 //param1参数类型: 0单个数组,1多个数组。 static function select($state, $mysql):array { $conn = self::dbConn(); //获得连接对象 $sql = $mysql; $query = mysqli_query($conn, $sql); if ($state == 1) { $result = mysqli_fetch_all($query,MYSQLI_ASSOC); } else { $result = mysqli_fetch_assoc($query); } // 释放结果集 mysqli_free_result($query); self::dbClose($conn); //释放连接对象 if ($result == null) { //如果结果为空,则返回空数据集 return array(); } return $result; } //增加、删除、修改数据 //param1:执行类型;param2:执行语句 //param1参数类型:1增加,2修改,3删除。 static function sqlHelper($state, $mysql):int { $conn = self::dbConn(); //获得连接对象 $sql = $mysql; $query = mysqli_query($conn, $sql); //判断状态,做出相应提示。 //$sts = $state==3?"删除":($state==2?"修改":($state==1?"增加":$state)); self::dbClose($conn); //释放连接对象 if ($query){ return 1; //有内容变化 //return $sts."成功"; } else{ return 0; //无内容变化 //return $sts."失败"; } } //关闭连接 static function dbClose($conn) { $conn ->Close(); } } ?>
Test.php is used to test data
//查询单个数据 $select = DBHelper ::select(0, "select * from XXX where xx = '$xx'"); //查询多个数据 $selectAll = DBHelper ::select(1,"select * from XXX"); //添加数据 $insert = DBHelper ::sqlHelper(1, "insert into XXX (xx,xx,xx) values ('$xx','$xx','$xx')"); //修改数据 $update = DBHelper ::sqlHelper(2, "update XXX set xx = '$xx',xx = '$xx',xx = '$xx', where xx = '$xx'"); //删除数据 $delete = DBHelper ::sqlHelper(3, "delete from XXX where xx = '$xx'");
The first two The test data are all queries. The set return parameters are mysqli_fetch_assoc and mysqli_fetch_all. These two parameters return arrays, but they contain single data or multiple data.
mysqli_fetch_assoc:
mysqli_fetch_all:
The last three items correspond to additions, deletions, and modifications. The returned int type parameters can be used to determine execution. whether succeed.
The above is the detailed content of How to use PHP to connect to MySql database. For more information, please follow other related articles on the PHP Chinese website!