PHP mysqli_fetch_assoc存储到数组中

PHP mysqli_fetch_assoc存储到数组中,php,mysql,arrays,Php,Mysql,Arrays,我在从sql查询中提取一行并将其存储到数组中时遇到问题。这是我的密码 $sql = "SELECT water, importdate FROM customer_table WHERE customer_number = '" . $custNum . "';"; $result_of_login_check = $this->db_connection->query($sql); echo $sql . "<b

我在从sql查询中提取一行并将其存储到数组中时遇到问题。这是我的密码

$sql = "SELECT water, importdate
        FROM customer_table
        WHERE customer_number = '" . $custNum . "';";
        $result_of_login_check = $this->db_connection->query($sql);
        echo $sql . "<br>";
        $result = mysqli_query($this->db_connection,$sql);

        // set array
        $array = array();

        // look through query
        while($row = mysqli_fetch_assoc($result)){

        // add each row returned into an array
        $array[] = $row;
        }
        print_r($array);
在存储过程中,我一直在想如何将每一行复制到数组中

Array ( 
    [water] => 23 
    [importdate] => 2014-03-29
) 
Array ( 
    [water] => 33 
    [importdate] => 2015-02-22
)
这是存储在$row中的每一行

我要做的是,我需要从数据库中提取同一客户的账单金额和日期列表,然后按日期显示每个月。显示当前月份账单


谢谢你的帮助

当你说的时候,谁在包含这些对象

Array ( 
    [water] => 23 
    [importdate] => 2014-03-29
)
 Array ( 
    [water] => 33 
    [importdate] => 2015-02-22
)
没什么。。你需要有一个包含这个数组的数组,或者你需要有多个数组在某处被索引,基本上就是一个带数组的数组。所以这种格式没有什么问题


为什么特别需要这种格式?这没有道理

我最终改变了存储数据的方式。我将行分开,将它们放入两个不同的数组中,并将它们存储在会话中。下面是代码

            // set array
            $costArray = array();
            $dateArray = array();
            $i = 0;

            // look through query
            while($row = mysqli_fetch_assoc($result)){

              // add each row returned into an array
              $array[] = $row;

              //print_r($row);

              list($id,$two) = each($row);
              $costArray[$i] = $two;

              //echo "Total bill" . $two;

              list($id,$two) = each($row);
              $dateArray[$i] = $two;

              $i++;

            }
            $_SESSION['cost'] = $costArray;
            $_SESSION['date'] = $dateArray;
它们都是相同的长度,所以我最终将数组从会话中拉出,将它们存储到一个变量中,并像这样显示它们

for ($i = 0; $i < count($costArray); ++$i) {
echo $dateArray[$i]. " $" . $costArray[$i] . "<br>";
}

谢谢你的帮助,这让我意识到我是多么努力。

我想结果就是你想要的$数组[0]==数组'water'=>23,'importdate'=>2014-03-29'等等看起来您需要多个数组。数组的每个值都需要一个键,因为您没有显式定义一个键,所以它默认为0并从0开始递增。我相信您已经得到了想要的结果。稍后您可以这样循环:foreach$array作为$row{print\r$row;}并且您完全拥有您开始使用的内容,每一行都是自己的。从技术上讲,我不需要这种格式。我只是想做一个sql调用,以获取所有客户当前和过去的计费月份。我正在使用mysqli_fetch_assoc$result来提取每一行数据,我希望每一行数据都存储在一个assoc数组中,这样我就可以将它传递到另一个页面进行显示。我希望这是有意义的。@LeSlasha您当前的输出已经是您可以通过的最佳格式了。。如果有多个相同类型的对象,并且要对其进行索引,则需要一个数组。。尽量更好地解释你想在显示器上做什么,因为你的DB读数很好。。
for ($i = 0; $i < count($costArray); ++$i) {
echo $dateArray[$i]. " $" . $costArray[$i] . "<br>";
}