簡體   English   中英

打印數組中的問題(錯誤標量值)

[英]Problems in printing array (error scalar value)

我找不到打印此數組的方法。 這是我的腳本:

foreach ($task_types as $key => $value) {
    echo $key;
    $taskqu = mysql_query("SELECT COUNT(*), task_type FROM dotp_tasks WHERE task_type = '$key'");
    while ($row = mysql_fetch_array($taskqu)) {
        $taskqu[$row['task_type']] = $row[0];
    }
}
echo "<pre>";
print_r($taskqu);
echo "</pre>";

當我嘗試打印時,出現以下錯誤:

警告:無法將標量值用作數組中的

我該如何解決?

用數組語法解引用標量值會觸發該警告。 例如:

$a = 1;
$a[] = 1;

觸發條件:

PHP警告:不能在第5行的/Users/darragh/Sites/__.php中將標量值用作數組

$taskqu的初始值是$taskqu 它顯然不是數組,因此:

$taskqu[$row['task_type']] = $row[0];

是無效的操作,並引發此PHP警告。

這是因為$taskqu已經用mysql_query的返回值初始化了(因為您的查詢是SELECT語句)是resource類型或false

不管哪種方式,值都是初始化的,不是數組,因此不能使用數組語法取消引用。

希望這可以幫助 :)

暫無
暫無

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

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