Please read Arrays
and Array Processing in PHP for an introduction to arrays in PHP. You
may also want to read
Sorting
Arrays in PHP…Some Sorting Functions and Other
Ways of Initializing Arrays in PHP.
shuffle() Function
This function can shuffle or randomly arrange the elements of an arrays. It takes an arrays as argument and manipulates on the original array passed.
$ar=array(1,2,3,4,5,6,7);
shuffle($ar);
//$ar=array(7) { [0]=> int(5) [1]=>
//int(4) [2]=> int(3) [3]=> int(1)
//[4]=> int(6) [5]=> int(7) [6]=> int(2) }
//will be different for each run
As you can see the elements of the array ‘$ar’ passed have been re-ordered randomly by the shuffle() function.
This function can be useful when we’d like to have a random element from an array and the order of the elements is not important (as order of elements will change each time this function is operated on an array).
array_reverse() Function
This function takes an array as argument and returns the contents in reverse order. It can be used to create a copy of an array in reverse order.
$ar=array(1,2,3,4,5,6,7);
$ar2=array_reverse($ar);
//$ar=array(7) { [0]=> int(1) [1]=>
//int(2) [2]=> int(3) [3]=> int(4) [4]=>
//int(5) [5]=> int(6) [6]=> int(7) }
//$ar2=array(7) { [0]=> int(7) [1]=>
//int(6) [2]=> int(5) [3]=> int(4) [4]=>
//int(3) [5]=> int(2) [6]=> int(1) }
One thing to note here is that unlike the shuffle() function, this function does not operate on the original array passed rather it returns the operated values(reversed array).
count() and sizeof() Function
Both the functions are identical and they return the number of elements in the array passed.
$ar=array(1,2,3,4,5,6,7);
$c=count($ar);
//$c=int(7)
array_count_values() Function
This function is used to know the frequency of each unique element in an array. It returns an associative array containing a frequency table whose keys are the different values of the elements of the array passed to this function. The elements of the associative arrays returned in the number of times (frequency) each element is present in the original arrays passed.
The following code will make it clearer:
$ar=array(10,21,33,10,5,6,3,1,6,33);
$fre=array_count_values($ar);
//$fre=array(7) { [10]=> int(2) [21]=>
//int(1) [33]=> int(2) [5]=> int(1) [6]=>
//int(2) [3]=> int(1) [1]=> int(1) }
Previous Articles: