我找不到打印此数组的方法。这是我的脚本:
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[$row['task_type']] = $row[0];
是无效操作,并引发此 PHP 警告。
这是因为$taskqu
已经用返回值 mysql_query
初始化,它(因为你的查询是 SELECT
语句(要么是resource
类型,要么是false
。
无论哪种方式,该值都是初始化的,不是数组,因此不能使用数组语法取消引用。
希望这对:)有所帮助