首页  >  文章  >  后端开发  >  PHP数组打乱顺序后如何保留原始元素的索引?

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

WBOY
WBOY原创
2024-05-03 10:09:01541浏览

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中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn