首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在PHP中从关联数组中弹出键和值

在PHP中从关联数组中弹出键和值
EN

Stack Overflow用户
提问于 2011-07-07 18:09:32
回答 3查看 33.2K关注 0票数 24

假设S是PHP中的一个关联数组,我需要从它检索并提取第一个元素,包括value和key。

我会用

代码语言:javascript
复制
value1=array_pop(S);

但它只给了我价值。

我可以用

代码语言:javascript
复制
K=array_keys(S);
key1=array_pop(K);
value1=array_pop(S);

但它很复杂,因为它需要相同数据的两个副本。WHich是一个容易混淆的元素,因为数组本身就是数组中的一个元素。一定有一种更优雅的方式,在提取键/值的同时只读取对键/值。

EN

回答 3

Stack Overflow用户

发布于 2011-07-07 18:16:40

array_slice

代码语言:javascript
复制
$arr = array('k1' => 'v1', 'k2' => 'v2', 'k3' => 'v3');

$a = array_slice($arr, 0, 1);
var_dump($a);

$arr = array_slice($arr, 1);
var_dump($arr);


array(1) {
  ["k1"]=>
  string(2) "v1"
}
array(2) {
  ["k2"]=>
  string(2) "v2"
  ["k3"]=>
  string(2) "v3"
}
票数 7
EN

Stack Overflow用户

发布于 2011-07-07 18:13:52

代码语言:javascript
复制
$value = reset($array);
$key = key($array);

编辑: Hakre只是先我一步:-)

票数 6
EN

Stack Overflow用户

发布于 2011-07-07 18:12:54

代码语言:javascript
复制
list($value, $key) = array(reset($s), key($s));
array_shift($s); // or just unset($s[$key]);

当然,您可以将第一个语句拆分为两个单独的语句。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6608934

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档