Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 数组错误问题_Php - Fatal编程技术网

Php 数组错误问题

Php 数组错误问题,php,Php,大家好,你能帮我解决这个错误吗 警告:array_combine()要求参数2为数组,给定为null 在 我不明白它怎么了。我试过这么做,所以它是数组,但仍然是空的。我的数组如下所示: Array ( [0] => TVS darbai [user_task_types] => TVS darbai [1] => 14 [user_task_types_id] => 14 ) 我想将用户任务类型id与用户任务类型连接起来,它看起来像[14

大家好,你能帮我解决这个错误吗

警告:array_combine()要求参数2为数组,给定为null 在

我不明白它怎么了。我试过这么做,所以它是数组,但仍然是空的。我的数组如下所示:

Array
(
    [0] => TVS darbai
    [user_task_types] => TVS darbai
    [1] => 14
    [user_task_types_id] => 14
)

我想将用户任务类型id与用户任务类型连接起来,它看起来像[14]=>TVS darbai

您无需组合<代码>$row提供您的输出

$check = mysql_query("SELECT user_task_types, user_task_types_id FROM dotp_user_task_type WHERE user_id = '$user_id'");
while ($row = mysql_fetch_array($check) )
{
    echo $row;
}

$row[]=
追加到数组中。您的阵列现在看起来像:

array(
    0 => array(...)
)
如您所见,没有
[1]
。您可能只需要
$row=mysql\u fetch\u array(..)
,然后
$row[0]
对应于第一列,
row[1]
对应于第二列。不过,将这两列组合起来仍然没有意义

你可能想要这个:

$result = mysql_query(...);
$check  = array();
while ($row = mysql_fetch_array($result)) {
    $check[$row[0]] = $row[1];
}

表中有多少行?为什么使用相同的变量进行查询和存储数据?更改
$row[]=mysql\u fetch\u数组($check)
$row=mysql\u fetch\u数组($check)但它现在只打印最后一行数据库。例如,如果有两行:TVS 15和KMS 6,ir只写入KMS 6。我应该创建循环吗?当然
mysql\u fetch\u array
获取一行!如果您想获取所有,您需要循环。那么我应该使用什么?因为这不起作用:
while($row=mysql\u fetch\u assoc($result)){$check=array($row[1]=>$row[0]);}
$result = mysql_query(...);
$check  = array();
while ($row = mysql_fetch_array($result)) {
    $check[$row[0]] = $row[1];
}