我对php中的关联数组有疑问。
我有以下数组,其中有两个项目分别名为4和2。
$items = array(4,2);
现在我想将每个项目的数量与它相关联,可以按如下方式进行:
$items['4']=23;
$items['2']=0;
表示有23个,“第4项”和“第2项”。
但我有时事先并不知道 $ items 中有什么,所以我想根据位置关联数量。我想做一些像关联23到 item 数组的零位置上的内容:
$items['items[0]']=23;
这当然不起作用,因为它不是正确的方法来提取放置在物品的零位置上的任何东西。谁能告诉我我该怎么做?
答案 0 :(得分:2)
您对项目和项目的使用感到困惑。我想你有一个项目数组和一个项目数组,否则事情很容易变得毛茸茸。
无论如何,你只是将它称为变量,而不是字符串:
$items[$item[0]] = 23;
答案 1 :(得分:0)
让我直截了当。所以你从一个看起来像这样的数组开始:
$items = array( 0 => 4, 1 => 2 )
并且你想得到一个如下所示的数组:?!
$items = array( 0 => 4, 1 => 2, 2 => 0, 4 => 23 )
答案 2 :(得分:0)
我认为你应该将你的数组用作一种“地图”。物品编号是您的钥匙,也是您的价值数量。
致电
$items = array(4,2);
你创建
$items[0] = 4;
$items[1] = 2;
但是你想在数组中使用4和2作为键。所以你应该使用
$items = array( 4 => false, 2 => false );
其中false表示尚未关联数量的项目(也可以是例如-1)。 这会创建
$items[2] = false;
$items[4] = false;
使用false时,您可以通过调用
来检查未分配的值if ($items[4] === false) {
echo "No quantity set!";
}
现在第二步......如果你想为#4项目分配数量为23,请致电
$items[4] = 23;
所以我认为你不会想要依赖数组中的顺序..