一、mysqli基础操作:
1、连接数据库:
mysqli_connect()函数 填写你连接数据库的账号密码
$conn=mysqli_connect('127.0.0.1','root','root');//连接数据库,返回连接的对象
2、选择数据库
mysqli_select_db()函数,第一个参数是你之前的连接返回的对象,第二个参数是你的数据库
mysqli_select_db($conn,'ceshi');//选择数据库
3、设置字符集
mysqli_set_charset()函数
mysqli_set_charset($conn,'utf-8'); //设置字符集
4、执行查询语句
直接给一个查询语句字符串
$sql='select * from test'; //查询语句
5、执行查询语句
mysqli_query()
$result=mysqli_query($conn,$sql); //在$conn这个数据库执行$sql查询语句
6、关闭数据库(使用完后一定要关闭数据库)
mysqli_close($conn); //关闭数据库
二、对数据库的一些操作
这是本地的一个test表:
)以索引数组的方式获取一条记录(mysqli_fetch_row()函数
<?php
//操作数据库,去除数据进行显示
$conn=mysqli_connect('127.0.0.1','root','root'); //连接数据库,返回连接的对象
mysqli_select_db($conn,'ceshi');//选择数据库
mysqli_set_charset($conn,'utf-8'); //设置字符集
$sql='select * from test'; //查询语句
$result=mysqli_query($conn,$sql); //在$conn这个数据库执行$sql查询语句
$arr=mysqli_fetch_row($result); //获取一行的数据,可以多次执行
print_r($arr);
mysqli_close($conn); //关闭数据库
?>
可以看到成功查询到一行数据
第二次执行这个语句
$data=mysqli_fetch_row($result);//获取一行的数据,可以多次执行
$data2=mysqli_fetch_row($result);
print_r($data2);
mysqli_close($conn); //关闭数据库
可以看到是第二行的数据
使用循环的方式来获取数据
while($data=mysqli_fetch_row($result)){
print_r($data);
}
可以看到是可以查询到所有的内容的
)以关联数组的方式获取一条记录(mysqli_fetch_assoc()函数)
$data=mysqli_fetch_assoc($result);
print_r($data);
结果如下(和索引数组操作基本相似)
来对比下这个两个的区别:
索引数组mysqli_fetch_row(): Array ( [0] => 第一行 [1] => 111 )
关联数组mysqli_fetch_assoc():Array ( [username] => 第一行 [pass] => 111 )
可以看到两个的区别,username和pass是表里的列名
)mysqli_fetch_array() 这个函数既可以关联也可以索引
操作的话和上面基本一样
mysqli_fetch_array($res)返回的既有关联数组又有索引数组,但是效率低点。如果想提高第三种方式的效率,可以添加第二个参数。
mysqli_fetch_array($res,MYSQLI_ASSOC)获取的就是关联数组
mysqli_fetch_array($res,MYSQLI_NUM)获取的就是索引数组
既有关联又有索引是这样的:
)mysqli_fetch_all() 这个函数可以直接获取所有的数据,后面不加参数的话也是既有关联数组又有索引数组
mysqli_fetch_all($res) 获取的是既有关联数组或索引数组
mysqli_fetch_all($res,MYSQLI_ASSOC)获取的就是关联数组
mysqli_fetch_all($res,MYSQLI_NUM)获取的就是索引数组