我有一个从NoSQL数据库获取数据的函数,如果它不可用,它会转到MySQL数据库获取数据,但问题是,函数将数据放入数组两次,而我不知道为什么。
预期结果
array(2) {
["id"]=> string(2) "30"
["username"]=> string(8) "Username" }实际结果
array(4) {
[0]=> string(2) "30"
["id"]=> string(2) "30"
[1]=> string(8) "Username"
["username"]=> string(8) "Username" }码
与问题无关的代码将被删除并替换为伪代码注释。
$Connection = $this->Connect("MySQLi");
$Data = MySQLi_Fetch_Array(
MySQLi_Query($Connection["MySQLi"], $Options["Query"])
);
echo "Got array (MySQLi).";值得注意的是,字符串"Got数组(MySQLi)“。只出现一次。
发布于 2013-07-21 18:23:56
数组()接受一个参数resulttype,默认情况下该参数设置为MYSQLI_BOTH。
通过使用MYSQLI_ASSOC常量,此函数的行为将与mysqli_fetch_assoc()相同,而MYSQLI_NUM的行为将与mysqli_fetch_row()函数相同。最后一个选项MYSQLI_BOTH将创建一个包含两个.属性的数组
mysqli_fetch_assoc获取关联数组,而mysqli_fetch_row获取具有数字索引的数组。
具有参数mysqli_fetch_array的MYSQLI_BOTH将在同一个数组中同时获取名(关联)索引和数字索引。
发布于 2013-07-21 18:19:55
MySQLi_Fetch_Array在一个数组中获得重复的数据--同时具有数值索引和关联索引。
使用mysqli_fetch_assoc来代替只有关联
https://stackoverflow.com/questions/17775396
复制相似问题