MySQL在不同的密钥下返回两行具有相同数据的行

时间:2015-03-24 21:07:27

标签: php mysql

MySQL在不同的密钥下返回两行具有相同数据。

Array
(
    [0] => 1
    [id] => 1
    [1] => Good
    [name] => Good
    [2] => 1.jpg
    [path] => 1.jpg
)

我正在谈论的是[0]和[id]具有相同的数据,它直接从查询返回为什么这样,有没有办法解决它只返回字符串键。

我的查询功能。

<?php

class Database
{

    private static $connection = null;

    public function Connect()
    {
        self::$connection = mysqli_connect( "127.0.0.1", "root", "", "image");
        if (mysqli_connect_errno()) { die("Failed to connect to MySQL"); }
    }

    public function custome($query)
    {
        $result = mysqli_query(self::$connection, $query);
        while ($item = mysqli_fetch_array($result)) { $resultArray[] = $item; } return $resultArray[0];
    }

}

?>

3 个答案:

答案 0 :(得分:1)

当您致电mysqli_fetch_array时,默认为MYSQLI_BOTH,会返回数字和关联索引。
您可能需要MYSQLI_NUMMYSQL_ASSOC,而不是默认的MYSQLI_BOTH

或者,使用默认为关联数组的mysqli_fetch_assoc

以下是相关文档:

答案 1 :(得分:0)

使用mysqli_fetch_assoc代替mysqli_fetch_array来检索关联(键/值)数组

 public function custome($query)
  {
            $result = mysqli_query(self::$connection, $query);
            while ($item = mysqli_fetch_assoc($result))
             {
                  $resultArray[] = $item; 
             } 
     return $resultArray[0];
  }

答案 2 :(得分:-2)

您可以通过识别关联数组的键/值对来引用一个名为&#34; association&#34;的数组。数组中的项位置是数字myarray[n-1],其中n是数组的大小。