10月28日上午 PHP数据访问

时间:2020-12-06 14:21:09
1.建一个连接(连接PHP和MYSQL)
$db = new MySQLi("localhost","root","666","text1");
//造了一个MySQLi,打开一个连接,造了一个连接对象。

//第一个参数是IP地址或域名,本地的就是localhost;

//第二个是用户名;

//第三个是服务器密码;

//第四个是数据库名称

2.判断是否出错

/*if(mysqli_connect_error())//判断连接是否出错的方法
{
    echo "连接失败!";//输出连接失败,不输出任何东西就会输出true或者flase。

    exit;//然后退出程序
}*/

//判断是否出错简单写法
mysqli_connect_error()?die("连接失败"):"";//如果出错了,输出“连接失败”,然后退出程序。没有错就什么也不做。

3.写SQL语句

$sql = "select * from info";

4.执行SQL语句

//执行SQL语句,返回结果集对象

$_REQUEST = $db->query($sql);

//调用query方法执行sql语句,执行完以后会返回结果集对象,注意是对象,用$_RESULT接收。

5.从结果集中读取数据

//从结果集中读取数据,返回的是数组
 
//$attr = $_REQUEST->fetch_all();//读取所有数据,返回索引二维数组,此方法要慎用,有时候可能不行,写法没有提示。

//$attr = $_REQUEST->fetch_array();//读取当前指针指向的数据,返回索引关联都有的数组。 

//$attr = $_REQUEST->fetch_assoc();//返回关联数组 

//$attr = $_REQUEST->fetch_row();//返回索引数组 

//$attr = $_REQUEST->fetch_object();//返回对象 

//上面输出方法需要用什么时就用哪种方法,这些方法都要记住。

/*$arr = array(); while($attr = $_REQUEST->fetch_row()) { } var_dump($attr);*/
当fetch_all()不能用时,可以用这种方法,但是遍历出来的是一维数组
while($attr = $_REQUEST->fetch_row())//用fetch_row()遍历出所有的数组

{ 
  var_dump($attr); 
} 

下面方法可以用fetch_row()遍历出二维数组

$arr = array();//外层定义一个空的数组
while($attr = $_REQUEST->fetch_row())//每取到一个数据的小数组就放到大数组里面。最后得到的是一个二维数组。
{
    array_push($arr,$attr);
}

var_dump($arr);//输出结果和fetch_all()方法输出的结果是一样的