Tutorialspoint.dev

PHP | array_rand() Function

This inbuilt function of PHP is used to fetch a random number of elements from an array. The element is a key and can return one or more than one key. On a practical basis, this is not that useful because the function uses pseudo-random number generator that is not suitable for cryptographic purposes.

Syntax:

array_rand($array, $num)

Parameters: The function takes only two arguments and are described below:

  1. $array (mandatory): This is a mandatory parameter and refers to the original input array.
  2. $num (optional): This parameter refers to the number of random numbers needed to be returned. This has to be greater than or equal to one otherwise E_WARNING is thrown along.

Return Value: This function returns the random generated values from the array. The number of returned elements depends on the value of the $num, assigned to the function.

Examples:



Input : 
$array = ("ram"=>"20", "krishna"=>"42", "aakash"=>"15")
$num = 2
Output :
Array
(
    [0] => ram
    [1] => aakash
)

Input :
$array = ("ram"=>"20", "krishna"=>"42", "aakash"=>"15")
Output : krishna

Below programs illustrates the array_rand() function in PHP:

  • In the below program we have passed our second parameter that specifies the number of elements to be returned.

    <?php
    // PHP function to illustrate the use 
    // of array_rand()
    $array = array("ram"=>"20", "krishna"=>"42"
                                "aakash"=>"15");
    $num = 2;
    print_r(array_rand($array, $num));
    ?>

    Output:

    Array
    (
        [0] => ram
        [1] => krishna
    )
    
  • Now let’s see what will happen if we don’t pass the second parameter.

    <?php
    // PHP function to illustrate the 
    // use of array_rand()
    $array = array("ram"=>"20", "krishna"=>"42",
                                "aakash"=>"15");
    print_r(array_rand($array));
    ?>

    Output:

    aakash
    

Reference:
http://php.net/manual/en/function.array-rand.php



This article is attributed to GeeksforGeeks.org

leave a comment

code

0 Comments

load comments

Subscribe to Our Newsletter