自然地对平面数组进行排序,而不保留原始键
有没有办法让 natsort()
也更改索引?
即
$array = array('IMG0.png', 'img12.png', 'img10.png', 'img2.png', 'img1.png', 'IMG3.png');
natsort($array);
Array
(
[0] => IMG0.png
[4] => img1.png
[3] => img2.png
[5] => IMG3.png
[2] => img10.png
[1] => img12.png
)
但我想要:
$array = array('IMG0.png', 'img12.png', 'img10.png', 'img2.png', 'img1.png', 'IMG3.png');
natsort($array);
Array
(
[0] => IMG0.png
[1] => img1.png
[2] => img2.png
[3] => IMG3.png
[4] => img10.png
[5] => img12.png
)
Is there any way for natsort()
to also change the indexes?
I.e.
$array = array('IMG0.png', 'img12.png', 'img10.png', 'img2.png', 'img1.png', 'IMG3.png');
natsort($array);
Array
(
[0] => IMG0.png
[4] => img1.png
[3] => img2.png
[5] => IMG3.png
[2] => img10.png
[1] => img12.png
)
But I want:
$array = array('IMG0.png', 'img12.png', 'img10.png', 'img2.png', 'img1.png', 'IMG3.png');
natsort($array);
Array
(
[0] => IMG0.png
[1] => img1.png
[2] => img2.png
[3] => IMG3.png
[4] => img10.png
[5] => img12.png
)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
array_values
将有效地重新索引传递给的任何数组它具有连续的整数键。所以你只需要做:array_values
will effectively reindex any array passed to it with sequential integer keys. So you just need to do:只需使用
sort()
及其自然排序标志即可。这样您就不需要费心调用array_values()
来重新索引。代码:(演示)
Simply use
sort()
with its natural sorting flag. This way you don't need to bother callingarray_values()
to re-index.Code: (Demo)
只需使用
array_values
获取数组的值并打破键值关联:所以:
产量:
请参阅 对 natsort 的评论。
Just use
array_values
to get the values of the array and break the key-value association:So:
yields:
See comment on natsort.