Heim  >  Artikel  >  Backend-Entwicklung  >  So fangen Sie ein zweidimensionales Array in PHP ab

So fangen Sie ein zweidimensionales Array in PHP ab

王林
王林Original
2023-05-19 13:14:09985Durchsuche

PHP ist eine sehr häufig verwendete Skriptsprache. In der täglichen Entwicklung müssen wir möglicherweise häufig zweidimensionale Arrays abfangen. Es ist sehr praktisch, PHP zum Betreiben zweidimensionaler Arrays zu verwenden. Es gibt verschiedene Möglichkeiten, zweidimensionale Arrays abzufangen.

1. Verwenden Sie die Funktion array_slice()

Die Funktion array_slice() ist eine Funktion, die mit PHP geliefert wird und zum Abfangen eines Teils des Arrays verwendet werden kann. Mit dieser Funktion können Sie problemlos ein zweidimensionales Array abfangen. Bei der Verwendung müssen Sie lediglich die Startposition und die Länge des Abfangens angeben.

Die Verwendungsmethode ist wie folgt:

array array_slice ( array $array , int $offset , int $length = null , bool $preserve_keys = false )

Unter diesen ist $array das abzufangende Array, $offset ist die Startposition des Abfangens und $length ist die Länge des Abfangens und $preserve_keys stellt dar, ob der ursprüngliche Schlüsselname beibehalten werden soll. Der Standardwert ist false.

Es ist zu beachten, dass diese Funktion ein neues Array zurückgibt und den Wert des ursprünglichen Arrays nicht beeinflusst. Das Folgende ist ein Beispiel:

$arr = array(
    array('name'=>'张三','age'=>20),
    array('name'=>'李四','age'=>22),
    array('name'=>'王五','age'=>24),
    array('name'=>'赵六','age'=>26),
    array('name'=>'孙七','age'=>28)
);

$new_arr = array_slice($arr, 1,2);

print_r($new_arr);

Das Ausgabeergebnis ist:

Array
(
    [0] => Array
        (
            [name] => 李四
            [age] => 22
        )

    [1] => Array
        (
            [name] => 王五
            [age] => 24
        )

)

Der obige Code fängt die beiden Elemente ab dem zweiten Element im ursprünglichen Array ab und gibt ein neues zurück Array.

2. For-Schleife verwenden

Mit der „for-Schleife“ können Sie auch einen Teil des zweidimensionalen Arrays abfangen und das Abfangen durch Steuern der Start- und Endposition erreichen der Schleife. Das Folgende ist ein Beispiel:

$arr = array(
    array('name'=>'张三','age'=>20),
    array('name'=>'李四','age'=>22),
    array('name'=>'王五','age'=>24),
    array('name'=>'赵六','age'=>26),
    array('name'=>'孙七','age'=>28)
);

$new_arr = array();
for($i=1;$i<=2;$i++){
    array_push($new_arr,$arr[$i]);
}

print_r($new_arr);

Das Ausgabeergebnis ist das gleiche wie im vorherigen Beispiel:

Array
(
    [0] => Array
        (
            [name] => 李四
            [age] => 22
        )

    [1] => Array
        (
            [name] => 王五
            [age] => 24
        )

)

Der obige Code verwendet die „for-Schleife“, um zwei Elemente abzufangen, beginnend mit das zweite Element und gibt ein neues Array zurück.

3. Verwenden Sie die Funktion array_splice().

Die Funktion array_splice() ist ebenfalls eine Funktion, die mit PHP geliefert wird und zum Abfangen eines Teils eines Arrays verwendet werden kann. Mit dieser Funktion können Sie problemlos ein zweidimensionales Array abfangen. Bei der Verwendung müssen Sie lediglich die Startposition und die Länge des Abfangens angeben.

Die Verwendungsmethode ist wie folgt:

array array_splice ( array &$input , int $offset [, int $length = 0 [, mixed $replacement = array() ]] )

Unter diesen ist $input das abzufangende Array, $offset ist die Startposition des Abfangens und $length ist die Länge des Abfangens und $replacement bedeutet, dass der ersetzte Inhalt ein Array oder andere Arten von Werten sein kann.

Es ist zu beachten, dass diese Funktion den Wert des ursprünglichen Arrays ändert, dh nach dem Abfangen wird das ursprüngliche Array geändert. Das Folgende ist ein Beispiel:

$arr = array(
    array('name'=>'张三','age'=>20),
    array('name'=>'李四','age'=>22),
    array('name'=>'王五','age'=>24),
    array('name'=>'赵六','age'=>26),
    array('name'=>'孙七','age'=>28)
);

array_splice($arr, 1,2);

print_r($arr);

Das Ausgabeergebnis ist:

Array
(
    [0] => Array
        (
            [name] => 张三
            [age] => 20
        )

    [1] => Array
        (
            [name] => 赵六
            [age] => 26
        )

    [2] => Array
        (
            [name] => 孙七
            [age] => 28
        )

)

Der obige Code fängt die beiden Elemente ab dem zweiten Element im ursprünglichen Array ab und ändert das Original Array.

4. Verwenden Sie array_slice() und foreach-Schleife

Manchmal müssen wir eine bestimmte Spalte im zweidimensionalen Array abfangen, was durch die Verwendung von array_slice() erreicht werden kann Funktion und foreach-Schleife. Das Folgende ist ein Beispiel:

$arr = array(
    array('name'=>'张三','age'=>20),
    array('name'=>'李四','age'=>22),
    array('name'=>'王五','age'=>24),
    array('name'=>'赵六','age'=>26),
    array('name'=>'孙七','age'=>28)
);

$new_arr = array();
foreach($arr as $val){
    $new_arr[] = array_slice($val,0,1);
}

print_r($new_arr);

Das Ausgabeergebnis ist:

Array
(
    [0] => Array
        (
            [name] => 张三
        )

    [1] => Array
        (
            [name] => 李四
        )

    [2] => Array
        (
            [name] => 王五
        )

    [3] => Array
        (
            [name] => 赵六
        )

    [4] => Array
        (
            [name] => 孙七
        )

)

Der obige Code fängt die erste Spalte im zweidimensionalen Array ab und gibt ein neues Array zurück.

Die oben genannten Methoden sind mehrere Methoden zum Abfangen zweidimensionaler Arrays. Ich hoffe, sie können Ihnen bei der Lösung von Problemen in der täglichen Entwicklung helfen.

Das obige ist der detaillierte Inhalt vonSo fangen Sie ein zweidimensionales Array in PHP ab. 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