所以这是我目前的代码:
foreach ($userItemsLoad as $item) {
foreach ($dbItemsLoad as $items => $value) {
if(array_key_exists($item['defindex'], $dbItemsLoad)) {
echo $item['defindex'] . "</br>";
echo $value['name'] . "</br>";
break;
}
}
}
来自$item['defindex']
的 $userItemsLoad
是一个字符串。此字符串是$dbItemsLoad
数组中值的键。
如果$item['defindex']
与$dbItemsLoad
的密钥匹配,我想从$dbItemsLoad
获取该密钥的数据。
我如何实现这一目标?
当我使用上面的代码时,如果我将break;
放在第二个foreach中,那么第一个循环将从启动开始,如果我把它放在第一个循环中$value['name']
始终是该数组中的第一个值。
$userItemsLoad
看起来像这样:
Array
(
[0] => Array
(
[id] => 669059101
[original_id] => 669059101
[defindex] => 15058
[level] => 1
[quality] => 4
[inventory] => 2147483711
[quantity] => 1
[flag_cannot_trade] => 1
[flag_cannot_craft] => 1
[attributes] => Array
(
[0] => Array
(
[defindex] => 9
[value] => 3
[float_value] => 0
)
[1] => Array
(
[defindex] => 153
[value] => 1065353216
[float_value] => 1
)
[2] => Array
(
[defindex] => 14
[value] => 14
[float_value] => 0
)
)
)
[1] => Array
(
[id] => 692723781
[original_id] => 692723781
[defindex] => 5039
[level] => 1
[quality] => 4
[inventory] => 2147483673
[quantity] => 1
[flag_cannot_trade] => 1
[flag_cannot_craft] => 1
$dbItemsLoad
看起来像这样:
Array
(
[1] => Array
(
[name] => Anti-Mage's Glaive
[prefab] => default_item
[image_inventory] => econ/heroes/antimage/antimage_weapon
[item_description] => #DOTA_Item_Desc_AntiMages_Glaives
[item_name] => #DOTA_Item_AntiMages_Glaive
[item_type_name] => #DOTA_WearableType_Glaive
[model_player] => models/heroes/antimage/antimage_weapon.vmdl
[portraits] => Array
(
数组1的defindex等于数组2的键。我想要数组2中该键的信息,如名称,图像等。