几天在写最近开源项目的时候,遇到一个问题就是如下

贴一下源码
<?php
include 'codeBack.config.php';
include "connectMysql.php";
include "empty.php";
header("connection","keep-alive");
$date = $_POST["date"];
$morning = $_POST["morning"];
$afternoon = $_POST["afternoon"];
$evening = $_POST["evening"];
$other = $_POST["other"];
$userid = $_POST["user_id"];
$token = $_POST["token"];
$ac_user_sql = "SELECT * from ac_user WHERE user_id='$userid' AND token='$token'";
$ac_user_result = $mysqli->query($ac_user_sql);
$ac_user_row = mysqli_fetch_object($ac_user_result);
if($ac_user_row->token == $token && $ac_user_row->user_id == $userid){
// 查找成功
$ac_user_info_sql = "INSERT INTO ac_user_info (date,morning,afternoon,evening,other,user_id) VALUES('$date','$morning','$afternoon','$evening','$other','$userid')";
$ac_user_info_result = $mysqli->query($ac_user_info_sql);
if($ac_user_info_result){
// 插入成功
$data = [
"code"=>$CodeBack["ADDINFO_SUCCESS_CODE"],
"user_id"=>$ac_user_row->user_id,
"id"=>$mysqli->insert_id,
"message"=>"添加成功",
];
echo json_encode($data);
}else {
$data = [
"code"=>$CodeBack["ADDINFO_FAILED_CODE"],
"message"=>"添加失败,请稍后再试",
];
echo json_encode($data);
}
}
因此便有了这篇文章,所以就来写写他们的区别吧
1、mysqli_fetch_row()
mysqli_fetch_row每次从执行从结果集中取出一条数据并以索引数组的形式返回,数组的索引对应查询时字段的顺序
例如select *查询所有字段,则返回结果$row[0]对应number字段,$row[3]对应job字段
对数组的操作只能采用数字索引
当取到最后一条结果后,下一条返回空(false)
2、mysqli_fetch_assoc() mysqli_fetch_assoc返回关联数组,数组索引对应字段的关键字,对数组的操作只能采用关键字
3、mysqli_fetch_array() mysqli_fetch_array默认返回索引与关联数组,对数组操作可用采用数字索引或关键字 其第二个参数可选:MYSQL_NUM(只返回索引数组),MYSQL_ASSOC(只返回关联数组)
4、mysqli_fetch_object() mysqli_fetch_object返回一个数组对象,以对象属性的方式操作数据
四种方式最主要的区别是返回数组的形式不同,在实际编程中可用按需要进行选择。 文章参考自:blog.csdn.net/thevictory/…