PHP数组打乱顺序后如何保留原始元素的索引?

WBOY
发布: 2024-05-03 10:09:01
原创
587 人浏览过

PHP shuffle() 函数可打乱数组元素顺序,但不会保留原始索引。可通过以下方法保留索引:1. 创建新数组并打乱元素;2. 使用 ksort() 函数对打乱后的数组进行排序。

PHP数组打乱顺序后如何保留原始元素的索引?

PHP 数组打乱顺序后保留原始索引

PHP 提供了 shuffle() 函数,可以随机打乱数组中的元素顺序。但是,需要注意的是,此函数只会打乱元素的顺序,而不会保留原始的索引。

实战案例:

предположим, у нас есть следующий массив:

$original = ['foo', 'bar', 'baz'];
登录后复制

如果我们使用 shuffle() 函数来打乱顺序:

shuffle($original);
登录后复制

那么我们可以得到一个打乱顺序后的数组:

$shuffled = ['baz', 'bar', 'foo'];
登录后复制

现在,如果我们想保留原始的索引,可以使用以下方法:

方法 1:创建一个新的数组

我们可以先创建一个带有原始索引的新数组,然后使用 shuffle() 函数打乱其中的元素:

$newArray = array_values($original);
shuffle($newArray);
登录后复制

方法 2:使用 ksort()

ksort() 函数可以根据键的值对数组进行排序。我们可以利用这个特性来保留原始索引:

ksort($shuffled);
登录后复制

以上两种方法都可以保留原始的索引,但方法 1 更简单,而方法 2 更通用。

以上是PHP数组打乱顺序后如何保留原始元素的索引?的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板