Home >Backend Development >PHP Problem >What are the types of php arrays?

What are the types of php arrays?

青灯夜游
青灯夜游Original
2021-06-09 17:46:245514browse

Types of php arrays: 1. Index array, its subscript (key name) consists of numbers, starting from 0 by default, each number corresponds to the position of an array element in the array; 2. Associative array, Its subscript (key name) is composed of a mixture of numerical values ​​and strings; 3. Multidimensional array, an array containing one or more arrays.

What are the types of php arrays?

The operating environment of this tutorial: windows7 system, PHP7.1 version, DELL G3 computer

An array is a collection of data. Series data are organized into an actionable whole. Arrays in PHP are complex but more flexible than arrays in many other high-level languages.

Array An array is an ordered set of variables, where each value is called an element. Each element is distinguished by a special identifier called a key (also called a subscript).

Each entity in the array contains two items, namely key and value. The corresponding array elements can be obtained by key value. These keys can be numeric keys or association keys. If a variable is a container that stores a single value, then an array is a container that stores multiple values.

PHP arrays are more flexible than arrays in other high-level languages. They not only support index arrays with numbers as keys, but also support associative arrays with strings or a mixture of strings and numbers as keys. In other high-level languages, such as Java or C, only numerically indexed arrays are supported.

The structure of the PHP array is as shown below:

What are the types of php arrays?

##Type of the php array

  • Index array: The subscript of the array is a number;

  • Associative array: The subscript of the array is Characters are associative arrays;

  • Multidimensional arrays: Arrays containing one or more arrays;

Note: PHP In fact, the array does not distinguish between index and associative array. The corresponding key value is found based on the key name

1, index array

Index An array stores an organized sequence of single or multiple values, each of which can be accessed using an unsigned integer value. The keys of the index array are integers and start from 0 and so on.

Index array initialization example:

<?php  
//创建一个索引数组,索引数组的键是“0”,值是“苹果”  
$fruit=array("苹果","香蕉");  
print_r($fruit);  
?>

Running result:

Array
(
    [0] => 苹果
    [1] => 香蕉
)

Three assignment methods for index array:

  • array[0]='Apple';

  • ##$arr=array('0'=>'Apple');

  • $arr=array('Apple');

  • Example:
<?php  
//请创建一个数组变量arr,并尝试创建一个索引数组,键是0,值是苹果  
$arr=array(0=>&#39;苹果&#39;);  
if( isset($arr) ) {print_r($arr);}  
?>

You can use for and foreach to access the elements in the array, because for is easier. Here are just examples of using foreach,

<?php  
$fruit=array(&#39;苹果&#39;,&#39;香蕉&#39;,&#39;菠萝&#39;);  
foreach($fruit as $key=>$value){  
    echo &#39;<br>第&#39;.$key.&#39;值是:&#39;.$value;  
}  
  
?>

Running results:

第0值是:苹果
第1值是:香蕉
第2值是:菠萝

Note: Here $key is the key The value $value is the element value

2. Associative array "Associative array" is an array with a special indexing method. Index it using a string or other type of value (except NULL).

In fact, the difference between associative arrays and index arrays is only in the key value. The key value of the associative array is a string, and it is an artificial regulation, for example:

<?php  
//创建一个关联数组,关联数组的键“orange”,值是“橘子”  
$fruit=array(&#39;orange&#39;=>&#39;橘子&#39;);  
echo $fruit[&#39;orange&#39;];  
?>

The rest of the initialization, assignment, foreach The usage is basically the same.

3. Multi-dimensional arrayThe concept in data structure, an array above two-dimensional array, an array that is neither linear nor planar becomes Multidimensional Arrays.

<?php
    $arr = array(
        &#39;安徽&#39; => array(
            &#39;阜阳&#39;=>array(&#39;阜南县&#39;,&#39;临泉县&#39;,&#39;颍州区&#39;),
            &#39;宿州&#39;=>array(&#39;墉桥区&#39;,&#39;灵璧县&#39;,&#39;泗县&#39;),
            &#39;合肥&#39;=>array(&#39;蜀山区&#39;,&#39;长丰县&#39;,&#39;肥东&#39;)
        ),
        &#39;河南&#39; => array(
            &#39;洛阳&#39;=>array(&#39;西工区&#39;,&#39;老城区&#39;,&#39;孟津县&#39;),
            &#39;郑州市&#39;=>array(&#39;中原区&#39;,&#39;金水区&#39;)
        )
    );
    print_r($arr);
    echo $arr[&#39;安徽&#39;][&#39;宿州&#39;][0];  // 输出墉桥区
?>

Among them, "Anhui" corresponds to a two-dimensional array, "Fuyang", "Suzhou" and "Hefei" respectively correspond to a one-dimensional array; similarly, "Henan" also corresponds to a two-dimensional array. "Anhui" and "Henan" respectively correspond to a two-dimensional array, and they are combined to form a three-dimensional array. There is no fixed upper limit for multi-dimensional arrays in PHP, but as the number of dimensions increases, the array will become more and more complex, making it slightly more difficult to read, debug and maintain. The running result of the above program is:

Array
(
    [安徽] => Array
        (
            [阜阳] => Array
                (
                    [0] => 阜南县
                    [1] => 临泉县
                    [2] => 颍州区
                )
            [宿州] => Array
                (
                    [0] => 墉桥区
                    [1] => 灵璧县
                    [2] => 泗县
                )
            [合肥] => Array
                (
                    [0] => 蜀山区
                    [1] => 长丰县
                    [2] => 肥东
                )
        )
    [河南] => Array
        (
            [洛阳] => Array
                (
                    [0] => 西工区
                    [1] => 老城区
                    [2] => 孟津县
                )
            [郑州市] => Array
                (
                    [0] => 中原区
                    [1] => 金水区
                )
        )
)
墉桥区

Recommended learning: "

PHP Video Tutorial

"

The above is the detailed content of What are the types of php arrays?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn