Definition of array
The essence of an array is to manage and operate a set of variables. An array can store data of any length or any type of data. The units in the array are called elements. Each element includes a subscript (key) and a value. When accessing an element, it is accessed through the subscript, including one-dimensional arrays, two-dimensional arrays and multi-dimensional arrays (that is, nesting of arrays) , PHP is divided into index array and associated element group.
(1) Index array: use integer as index, such as $arr=array('PHP course','HTML course','CSS course');
(2) Associative array: use string as index, such as $arr =array('ID'=>1,'name'=>'PHP Course','class=>'PHPcn');
Declaration and use of PHP arrays
1. Directly assign values to array elements.
If the index subscript is not given, the sequential indexing will start from 0; if the index subscript is given, the next one will increase by 1 starting from the largest subscript; if the previous subscript appears later, it will be the previous one. Elements are reassigned; in mixed declarations, indexed arrays and associative arrays do not affect each other.
For example:
$array[0]="I";
$array[1]="love";
$array[2]="PHP";
print_r($array);
where, print_r() is A special function that allows you to view the value in a PHP array variable. It will display all the elements in the array in the order of a certain key value and element. This is helpful for program debugging.
2. Use the array() function to declare
The default is an index array. If it is an associative array, you need to specify a subscript for the array, use "key => value", and use "," to separate multiple members.
For example:
$fruits = array('red' => 'apple', 'yellow' => 'banana', 'purple' => 'plum', 'green' => 'grape');
print_r($fruits);
Traversal of PHP arrays
We often need to traverse arrays. There are many ways to traverse arrays in PHP. You can use for() to loop through arrays. Here, sizeof is often used. () function, this function is one of the commonly used array functions. It returns the size of the array, that is, the number of elements read in the array, as the upper limit of the loop counter. You can also use the list() function to iterate through an array. It can only be used for numerically indexed arrays, and the numerical index starts from 0.
In PHP, you can also use a function specifically designed for looping arrays: foreach(). foreach() executes once for each element in the array passed to it. It does not require a counter or calling the function sizeof(). It can automatically track the position of the array in the array while requiring less maintenance. foreach() has two syntax structures:
(1) foreach (array_expression as $value)
(2) foreach (array_expression as $key => $value)
The first structure will traverse the given array_expression array, each In the second loop, the value of the current cell is assigned to $value and the pointer inside the array moves forward one step. In the second structure, the key name of the current unit will also be assigned to $key in each loop. The foreach loop runs to the end, and the internal pointer of the original array will point to the end of the array. For example:
foreach ($arr as $value) {
echo "Value: $value ";
}
foreach ($arr as $key => $value) {
echo "Key: $key; Value: $value ";
}
Sort of PHP array
Sorting array elements, we use it more when doing projects, and there are many related functions involved, such as sort(), rsort(), usort(), ksort(), uasort(), uksort(), etc. , here are a few introduced first. Use sort() and rsort() to sort the array in ascending and descending order respectively, for example:
$arr=array(23,4,65,11,64,8);
sort($arr);
print_r($arr) ;
Run result:
Array ([0] => 4 [1] => 8 [2] => 11 [3] => 23 [4] => 64 [5] => 65 )
In addition, we can notice that after sorting through the sort function, the original index key names of the array will be reassigned. rsort() sorts the array in reverse order.
If you use an associative array, you need to keep the order of keys and values consistent after sorting. This requires using the ksort() and asort() functions, for example:
$array=array('php'=>1, 'jsp'=>2,'asp'=>3);
ksort($array);
print_r($array);
Run result:
Array ( [asp] => 3 [jsp] => ; 2 [php] => 1)