要对 PHP 数组内的元素进行随机调换(即随机打乱数组元素的排列顺序),可以使用 PHP 内置的 shuffle() 函数。
要对 PHP 数组内的元素进行随机调换(即随机打乱数组元素的排列顺序),可以使用 PHP 内置的 shuffle() 函数。
shuffle() 函数的语法如下:
shuffle($array);
其中,$array 表示要进行随机打乱顺序的数组。这个数组可以是索引数组或关联数组。当完成打乱顺序后,$array 数组的键名和键值都会被打乱。
下面通过两个示例进行说明:
示例1:随机打乱一个索引数组
假设有一个索引数组 $numbers,包含数字 1~10。现在需要把数组内的元素顺序打乱,可以使用以下代码:
<?php
$numbers = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); // 定义一个包含数字1~10的索引数组
shuffle($numbers); // 随机打乱数组元素的顺序
print_r($numbers); // 打印出随机打乱后的数组
?>
这段代码的输出结果可能是:
Array
(
[0] => 6
[1] => 2
[2] => 7
[3] => 8
[4] => 10
[5] => 1
[6] => 3
[7] => 4
[8] => 9
[9] => 5
)
可以看到,$numbers 数组的元素顺序已经被随机打乱了。
示例2:随机打乱一个关联数组
现在有一个关联数组 $fruits,里面存放了一些水果名称和对应的价值。需要把数组内的元素随机打乱,以模拟一个随机选取水果的场景。可以使用以下代码:
<?php
$fruits = array(
"apple" => 5.5,
"banana" => 3.5,
"orange" => 6,
"pear" => 4,
"grape" => 8
); // 定义一个关联数组,存放水果名称和对应的价值
shuffle($fruits); // 随机打乱数组元素的顺序
print_r($fruits); // 打印出随机打乱后的数组
?>
这段代码的输出结果可能是:
Array
(
[0] => 8
[1] => 5.5
[2] => 4
[3] => 3.5
[4] => 6
)
可以看到,$fruits 数组的元素顺序已经被随机打乱了。需要注意的是,这时候数组的键名也被打乱了,因为 shuffle() 函数只是随机打乱了数组的值,没有保留原来的键名。如果需要保留原来的键名,可以先用 array_keys() 函数获取原数组的所有键名,打乱顺序后再使用 foreach 循环实现重新赋值,具体代码实现略。
本文标题为:php对数组内元素进行随机调换的方法
基础教程推荐
- PHP使用Redis实现Session共享的实现示例 2023-01-15
- ThinkPHP菜单无极分类实例讲解 2023-05-20
- Thinkphp5 路由的使用 2023-08-30
- ThinkPHP3.2框架自定义配置和加载用法示例 2022-11-01
- YII分模块加载路由的实现方法 2022-11-18
- Yii框架学习笔记之session与cookie简单操作示例 2023-01-08
- PHP实现Markdown文章上传到七牛图床的实例内容 2023-04-01
- TP5(thinkPHP5)框架使用ajax实现与后台数据交互的方法小结 2023-04-01
- php-7.3.6 编译安装过程 2023-04-01
- php常用字符串String函数实例总结【转换,替换,计算,截取,加密】 2024-01-17