Dam*_*oma 5 php arrays api indexing key
我有一个 API 调用返回的多维数组。此数组中的值使用如下键存储:
Array(["BTC_XRP"] => 1)
Run Code Online (Sandbox Code Playgroud)
我可以通过使用键(如 BTC_XRP)获取数组的值来获取它们,但是如果我需要使用索引获取值怎么办?
例如,如果无法通过索引获取值,如何使用 for 循环获取数组的每个值?
由于数组由 100 个值组成,我需要使用 for 循环回显每个值,但这给了我这个错误:
注意:未定义的偏移量:0
是否可以使用索引而不是键来获取值?
此外,我想通过索引获取密钥。如果我想获取第一个值的键,我想使用 0 索引来获取它。
谢谢!
小智 5
听起来您正在寻找array_keys(通过索引获取键)和array_values(通过索引获取值)函数:
$array = array("BTC_XRP" => 1, "EUR_XRP" => 234, "USD_XRP" => 567);
$keys = array_keys( $array );
$values = array_values( $array );
var_dump( $keys[1] ); // string(7) "EUR_XRP"
var_dump( $values[1] ); // int(234)
Run Code Online (Sandbox Code Playgroud)
或者像 Joshua 建议的那样使用 foreach。
这个问题的标题令人困惑。OP需要的只是如何迭代关联数组。答案同样愚蠢:
foreach ($array as $key => $value) {
echo "Key: $key, value: $value";
}
Run Code Online (Sandbox Code Playgroud)
但是吸引人们通过 Google 搜索的标题明确询问了如何通过关联数组的位置(或“索引”)从关联数组中获取某个值。为此,您需要一个名为array_slice()的函数:
$array = array('a'=>'apple', 'b'=>'banana', '42'=>'pear', 'd'=>'orange');
$index = 2;
$elem = array_slice($array, $index, 1, true);
$key = key($elem);
$value = reset($elem);
echo "Key: $key, value: $value"; // Key: 42, value: pear
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
11640 次 |
最近记录: |