簡體   English   中英

來自MySQL的PHP​​ Array不為空,但條目為空-如何避免

[英]PHP Array from MySQL is not empty but has an empty entry - how to avoid

我正在嘗試檢查數據庫中是否存在一項(一個或多個)。 但是,即使我知道沒有條目,我也會得到第一個條目為零的數組。 因此,它不是空的,我沒有得到我所需要的。

這是我的代碼:

    <?php
    $query = mysql_query("SELECT * FROM table WHERE column = $yfbid_number AND timestamp BETWEEN (NOW()- Interval 1 DAY) AND NOW()");
    $array[] = array();
    while ($row = mysql_fetch_assoc($query)){
        $array[] = $row['column'];
    }
    ?>

在應該為空的數組上執行print_r時,我得到:([0] => Array()),因此count為1而不是零,這弄亂了我的代碼。 有什么想法在這種情況下如何獲得真正的空數組? 我寧願不刪除此條目,但首先要避免使用它,因為在大多數情況下,我會得到一個空數組或只有一個條目(真實條目)的數組,在這種情況下,我將希望輕松區分兩者之間。 (就目前而言,兩者的計數都為1,這對我們的海豚來說非常不好)。 謝謝。

更改:

$array[] = array();

$array = array();

對於您的版本,如果$ array不存在,PHP將首先創建一個數組,然后向其附加一個空數組。 因此,您最終得到一個1元素數組,其唯一成員是一個空數組。

$array[] = array(); 應該是$array = array() 現在,您正在將數組元素附加到已初始化的數組。 打開通知,您可能會抱怨一個未定義的變量。

我建議您首先執行SELECT COUNT(*)以確定您將獲得多少個條目。 然后,您知道結果將是一個有用的答案,並且可以根據您的結果進行或不進行后續查詢。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM