Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Erklärung der PHP-Array-Funktion

Detaillierte Erklärung der PHP-Array-Funktion

小云云
小云云Original
2018-03-30 11:24:421995Durchsuche

Dieser Artikel gibt Ihnen hauptsächlich eine detaillierte Erklärung der PHP-Array-Funktionen, hauptsächlich in Form von Code und Text. Ich hoffe, er kann Ihnen helfen.

Array

  • Array gehört zu zusammengesetzten Datentypen

  • Array ist eigentlich ein Geordnete Zuordnung

Klassifizierung

索引数组     数组的下标(key)是数字

关联数组     数组的下标(key)是字符串

Ob es sich um ein Indexarray oder ein assoziatives Array handelt, der Wert wird über den Schlüssel ermittelt.

Erstellen

array()-Formular

Indexarray erstellen
array(value1,value2,value3...)

Beispiel 1

// 通过array()创建下标连续的索引数组
$arr1 = array('A',2,false); 

输出结果:
    Array ( [0] => A [1] => 2 [2] => )
    false转换成空字符串


Beispiel 2

//创建手动指定下标的数组
$arr2 = array(2=>'a',3=>true);

输出结果:
    Array ( [2] => a [3] => 1 )
Erstellen eines assoziativen Arrays
array(key1=>value1, key2=>value2, key3=>value3...)

Beispiel

// 定义关联数组
$userInfo = array(
    'username'=>'Tim',
    'age'=>23,
    'email'=>'404491216@qq.com'
);

print_r($userInfo);

输出结果:
    Array ( [username] => Tim 
            [age] => 23 
            [email] => 404491216@qq.com 
          )

[ ]-Formular (neu in 5.4)

$arr = [value1,value2,value3...]

Beispiel

// []创建数组
$arr = ['A','B',true,2];
print_r($arr);

输出结果:
    Array ( [0] => A [1] => B [2] => 1 [3] => 2 )

rang()

wird verwendet, um einen Index mit zu erstellen Array mit aufeinanderfolgenden Indizes.

range(min, max(, 步进制))

Schrittsystem: Wie stark unterscheidet sich jeder Wert, der Standardwert ist 1.

Beispiel

// range()例子  值为1-10
$arr = range(1,10,2);
print_r($arr);

输出结果:
    Array
        (
            [0] => 1
            [1] => 3
            [2] => 5
            [3] => 7
            [4] => 9
        )

compact()

compact('变量名')

wird verwendet, um ein assoziatives Array zu erstellen.

Definieren Sie es zuerst in einer externen Variablen und übergeben Sie dann die Variable, um ein Array zu generieren.

Beachten Sie, dass Variablennamen in 引号 eingeschlossen werden müssen.

Beispiel

// compact()例子
$username = 'Tim';
$age = 23;
$email = 'xxx@xx.com';

// 注意,这里变量名需要用引号
$userInfo = compact('username','age','email');

输出结果:
    Array ( [username] => Tim [age] => 23 [email] => xxx@xx.com )

define()

define(key,value)

Beispiel

define('TEST1',array('a','b','c'));
print_r(TEST1);

输出结果:
    Array ( [0] => a [1] => b [2] => c )

Schleife

for-Schleife

for-Schleife kann nur das Indexarray von 下标连续

ergänzend:

count() ruft die Anzahl der Parameter ab das Array

Wenn null, gibt count() 0 zurück.

Beispiel

// 使用rang()快速创建数组
$arr = range('a','d');

for($i=0; $i<$len; $i++){
    echo $arr[$i],&#39;<br/>&#39;;
}

输出结果:
    a,b,c,d

für jede Schleife

只要value
foreach (数组名称 as $value)    

key和value 都要
foreach (数组名称 as $key => $value)

Hinweis:

  • durchläuft das leere Array und die Schleife wird nicht ausgeführter Körper;

  • Beim Durchlaufen wird jeweils eine Kopie des Arrays ausgeführt (neue PHP7-Funktion)

  • Durchlaufen per Referenz, Es gibt einen besseren Weg. Iterative Funktionen, Änderungen am Array wirken sich auf die Schleife aus (php7)

Beispiel

// php7新特性——foreach操作的是数组的副本
$arr = [0,1,2];
$ref =&$arr;

foreach($arr as $v){
    echo $v,&#39;<br/>&#39;;

    // 老版本会删除1,但php7操作的是副本,所以没影响
    unset($arr[1]);
}

foreach输出结果:
    0 1 2

// 都是0、2   因为1被删除了
var_dump($arr,$ref);  

var_dump输出结果:
array (size=2)
  0 => int 0
  2 => int 2
)

Verwandte Empfehlungen:

php häufig verwendete Arrays Funktionsübersicht

Das obige ist der detaillierte Inhalt vonDetaillierte Erklärung der PHP-Array-Funktion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn