php 从一个数组中随机的取出若干个不同的数实例

要从一个数组中随机取出若干个不同的数有很多种方法,这里共享两种常用的实现方式,供大家参考。

方法一:使用 array_rand 函数

array_randPHP 中的一个内置函数,旨在从数组中随机选取一个或多个键名,返回键名或键名列表:

mixed array_rand ( array $array [, int $num = 1 ] )

其中参数1 $array 表示要从中选取键名的数组,参数2 $num 表示选取的键名数量(默认为1)。

基于此,我们可以将这些键名对应的数组值取出来,组成一个新数组,从而实现随机选取若干个不同元素的目的。

示例代码如下:

<?php
$sourceArr = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
$randKeys = array_rand($sourceArr, 3);
$outputArr = array();
foreach ($randKeys as $key) {
    $outputArr[] = $sourceArr[$key];
}
print_r($outputArr);
?>

解释一下上面的代码:

  1. 我们首先定义了一个数组 $sourceArr,存储一个由 1~10 这 10个整数构成的序列。

  2. 然后调用 array_rand($sourceArr, 3),表示从 $sourceArr 数组中取出 3 个键名。

  3. $randKeys 变量将返回所选取的 3 个键名。注意,这里 $randKeys 是一个整数索引数组。

  4. 我们通过 foreach 循环遍历 $randKeys 数组,以每个键名为下标,从 $sourceArr 数组中取出对应的元素,存储在 $outputArr 数组中。

  5. 最后,我们可以通过 print_r($outputArr) 将结果输出到浏览器。

方法二:使用 shuffle 函数

另外一种实现方式是使用 shuffle 函数。此函数支持原地打乱一个数组中的元素排序,从而让每个元素被等概率地随机选择。

示例代码如下:

<?php
$sourceArr = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
$outputArr = array();
shuffle($sourceArr);
$count = 3;
for ($i = 0; $i < $count; $i++) {
    $outputArr[] = $sourceArr[$i];
}
print_r($outputArr);
?>

解释一下上面的代码:

  1. 同样地,我们首先定义了一个数组 $sourceArr,存储一个由 1~10 这 10 个整数构成的序列。

  2. 调用 shuffle($sourceArr) 函数,表示打乱 $sourceArr 数组元素的顺序。

  3. 接着,我们定义一个循环,用于从 $sourceArr 数组中取出 $count 个元素。在每次循环中,我们依次取到 $sourceArr 数组中前 $count 个元素,存储到 $outputArr 数组中。

  4. 最后,我们可以通过 print_r($outputArr) 输出结果。

总结来说,从一个数组中随机选取不同元素的实现方式主要有两种:使用 array_rand 函数或使用 shuffle 函数。需要根据具体的场景选择合适的方法。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:php 从一个数组中随机的取出若干个不同的数实例 - Python技术站

(0)
上一篇 2023年5月26日
下一篇 2023年5月26日

相关文章

  • PHP对字符串的递增运算分析

    PHP对字符串的递增运算分析 在PHP中,我们可以对字符串执行递增操作。这是因为在PHP中,字符串实际上被视为一系列的字符,可以根据字符的ASCII值来比较大小。在这篇文章中,我们将详细讨论PHP中字符串递增运算的机制以及如何正确使用它。 什么是PHP的字符串递增运算? PHP中的字符串递增运算,指的是对字符串的最后一个字符进行加1操作。这个操作通常在字符串…

    PHP 2023年5月26日
    00
  • php回调函数处理数组操作示例

    针对“php回调函数处理数组操作示例”,以下是一份完整的攻略。 什么是回调函数 回调函数是指,在函数调用的过程中,将某个函数的指针(地址)作为参数传递到另一个函数中,并在另一个函数中对该函数进行调用。 以 PHP 为例,回调函数通常基于匿名函数或者函数名回调。匿名函数是 PHP 5.3 引入的新特性,允许将函数定义为一个变量,也可以作为函数参数传递。函数名回…

    PHP 2023年5月26日
    00
  • 基于PHP的简单采集数据入库程序【续篇】

    基于PHP的简单采集数据入库程序【续篇】的完整攻略如下: 一、前言 本文是《基于PHP的简单采集数据入库程序》的续篇,主要介绍如何通过 PHP 的 cURL 库采集网页数据,并将采集到的数据保存到 MySQL 数据库中。 二、采集数据入库程序实现步骤 1.编写采集程序 首先,需要通过 PHP 的 cURL 库访问目标网站,获取网站 HTML 代码,再通过正则…

    PHP 2023年5月27日
    00
  • PHP编程中八种常见的文件操作方式

    PHP编程中八种常见的文件操作方式 介绍 在PHP编程中,文件操作是一项至关重要的任务。PHP语言提供了多种方法和函数,方便程序员对文件进行读写、创建、删除和修改等操作。以下是八种常见的文件操作方式: 打开文件 读取文件内容 写入文件内容 关闭文件 创建文件 删除文件 修改文件权限 获取文件详细信息 打开文件 PHP提供了fopen()函数来打开文件,该函数…

    PHP 2023年5月23日
    00
  • 分享一个php 的异常处理程序

    下面我将详细讲解如何分享一个 PHP 的异常处理程序。 步骤一:编写 PHP 异常处理程序 首先,我们需要在 PHP 中编写一个异常处理程序。PHP 可以使用 try-catch 块来捕获和处理异常。以下是一个简单的示例: try { // 在这里运行你的代码 } catch (Exception $e) { // 处理异常 echo ‘Caught exc…

    PHP 2023年5月30日
    00
  • 微信小程序中setInterval的使用方法

    当我们需要在微信小程序中定时执行某些任务的时候,可以使用setInterval函数。下面将详细介绍setInterval函数的使用方法和应用场景。 什么是setInterval setInterval是JavaScript语言提供的一个函数,用于定期调用指定的函数,重复执行该函数,直到 clearInterval() 被调用或者程序关闭。setInterva…

    PHP 2023年5月23日
    00
  • PHP如何实现HTTP验证

    HTTP验证,也称为基本身份验证(Basic Authentication),是一种常见的网站访问控制方法,它可以让你限制某些页面和资源只有在用户提供正确的用户名和密码时才能访问。在PHP中,可以通过以下步骤来实现HTTP验证。 1. 设置HTTP头 首先,需要设置HTTP头部,以让浏览器弹出身份验证对话框。可以使用PHP的header函数来设置HTTP头:…

    PHP 2023年5月27日
    00
  • 全面屏时代的微边框 戴尔XPS 15-9570笔记本电脑详细图文评测

    全面屏时代的微边框 戴尔XPS 15-9570笔记本电脑详细图文评测 背景 在当今科技发展日新月异的时代,全面屏手机越来越普及,各大电脑厂商也纷纷推出了全面屏电脑。而其中,戴尔的XPS系列被称为全面屏电脑的代表之一。本次评测将详细讲解戴尔XPS 15-9570笔记本电脑的特点和性能,为大家提供选购参考。 特点 微边框设计 全面屏电脑的最大特点就是采用了微边框…

    PHP 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部