PHP数组。插入“$ key”=> “$ value”与array_push()配对到数组中;

时间:2011-12-31 00:29:36

标签: php array-push

为什么这不起作用?

$slidetotal=1;      
$slideids = array();
    while ($rowcs = mysql_fetch_array($orig_slides_result)) {
    $key = $slidetotal;
    array_push($slideids[$key], $rowcs['id']);
    $slidetotal++;
    }

我收到此错误: [phpBB Debug] PHP通知:在文件///*.php第161行:array_push()[function.array-push]:第一个参数应该是一个数组

虽然有人发表了评论,但您可以在此页面上执行此操作: http://php.net/manual/en/function.array-push.php,(发现:“将”$ key“=>”$ value“对插入数组中”)

将单个值列表插入php数组的下一个最佳方法是什么?顺便说一句,我真的不敢相信google.com上很难找到一些东西。严重?

3 个答案:

答案 0 :(得分:6)

PHP.net评论不正确。这是将$rowcs['id']推送到数组$slideids[$key],而不是数组$slideids

您应该执行以下操作,代替array_push()来电:

$slideids[$key] = $rowcs['id'];

答案 1 :(得分:0)

你为什么不这样做;

$slidetotal=1;      
$slideids = array();
while ($rowcs = mysql_fetch_array($orig_slides_result)) {
    $slideids[$slidetotal] = $rowcs['id'];
    $slidetotal++;
}

如果你不需要从1开始的密钥,你也可以这样做;

$slideids = array();
while ($rowcs = mysql_fetch_array($orig_slides_result)) {
    $slideids[] = $rowcs['id'];
}

答案 2 :(得分:0)

嗯ummm难以搜索将适用于谷歌我认为:) 无论如何,错误告诉你需要知道的一切。这意味着array_push的第一个参数不是数组,你给array_push($ slideids [$ key])一个值(string)。 另外你为什么需要在php中使用array_push?我宁愿用

$slideids[] = $rowcs['id'];

你要做的是:

$slideids[$key] = $rowcs['id'];
我猜...