gpt4 book ai didi

PHP获取数组中最后插入项的索引

转载 作者:IT王子 更新时间:2023-10-28 23:56:11 26 4
gpt4 key购买 nike

就像标题听起来一样简单;我需要获取最后插入的项目的索引/键。为什么这很难?请参阅以下两个代码示例:

$a=array();
echo 'res='.($a[]='aaa').' - '.(count($a)-1).'<br>';
echo 'res='.($a[]='bbb').' - '.(count($a)-1).'<br>';
echo 'res='.($a[]='aaa').' - '.(count($a)-1).'<br>';
die('<pre>'.print_r($a,true).'</pre>');

写:

res=aaa - 0
res=bbb - 1
res=aaa - 2
Array (
[0] => aaa
[1] => bbb
[2] => aaa
)

当然,这似乎工作正常,但请看:

$a=array();
echo 'res='.($a[]='aaa').' - '.(count($a)-1).'<br>';
echo 'res='.($a[2]='bbb').' - '.(count($a)-1).'<br>';
echo 'res='.($a[]='aaa').' - '.(count($a)-1).'<br>';
die('<pre>'.print_r($a,true).'</pre>');

写:

res=aaa - 0
res=bbb - 1 <- wrong!
res=aaa - 2 <- wrong!
Array (
[0] => aaa
[2] => bbb <- real key
[3] => aaa <- real key
)

简而言之,流行的解决方法 count($array)-1 是有缺陷的。

最佳答案

这里是 linear (最快)解决方案:

end($a);
$last_id=key($a);

关于PHP获取数组中最后插入项的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3275082/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com