我有一个包含我需要的信息的嵌套数组。
array(66) {
[0]=>
array(2) {
["key"]=>
string(1) "9"
["value"]=>
string(1) "9"
}
[1]=>
array(2) {
["key"]=>
string(3) "104"
["value"]=>
string(1) "3"
}
[2]=>
array(2) {
["key"]=>
string(3) "105"
["value"]=>
string(1) "1"
}
...
但是,这种格式并不是很有用。更有用的是
[9]=>9
[104]=>3
[105]=>1
等等。
不幸的是我的尝试
foreach ($arrayname as $key => $value) {
$i= ((int) $value);
$hashmap[$i] = ($value["value"]);
}
至今只记录了最终的值,没有关联的key 数组(1){ [1]=> 字符串(3)“360”}。注意:key 存储为 string 还是 int 都没有关系!
最佳答案
这已经是一个 HashMap 数组。所以你应该那样使用它。
我想您对此处的键 0, 1, ..
不感兴趣。
$hashmap = array();
foreach ($arr as $value) {
$hashmap[$value["key"]] = $value["value"];
}
然后您可以使用键/值对 foreach 方法来检查它是否有效:
foreach($hashmap as $key => $value){
echo 'map['.$key.']='.$value." \n<br/>";
}
关于php - 如何从嵌套数组创建哈希表 (php),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34407136/