Heim >Backend-Entwicklung >PHP-Problem >Was ist das Ergebnis der Verwendung des +-Zeichens zum Verketten von Arrays in PHP?

Was ist das Ergebnis der Verwendung des +-Zeichens zum Verketten von Arrays in PHP?

醉折花枝作酒筹
醉折花枝作酒筹nach vorne
2021-06-11 18:04:202483Durchsuche

In diesem Artikel erfahren Sie, wie Sie das +-Zeichen zum Verbinden von Arrays in PHP verwenden. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.

Was ist das Ergebnis der Verwendung des +-Zeichens zum Verketten von Arrays in PHP?

Was ist das Ergebnis der Verwendung des +-Zeichens zum Verbinden von Arrays in PHP?

Wenn wir entwickeln, führen wir manchmal zwei Arrays zusammen und verbinden sie. Seien Sie nicht faul und verwenden Sie das +-Zeichen direkt. Schauen wir uns den folgenden Code an:

$a = [1, 2];
$b = [4, 5, 6];

$c = $a + $b;
print_r($c);

Sagen Sie mir bitte direkt, was das Ergebnis mit dem ersten ist? Vielleicht können Sie erraten, wenn ich das frage, das Ergebnis ist:

Array
(
    [0] => 1
    [1] => 2
    [2] => 6
)

Sie sehen, das Ergebnis der mit dem +-Operator verbundenen Arrays ist die Vereinigung. Das heißt, je nach Schlüssel wird derselbe Schlüssel nicht überschrieben und es wird kein Schlüssel hinzugefügt, um ein neues Array zu bilden. Es geht nicht wirklich darum, die beiden Arrays hinzuzufügen.

Was wäre, wenn wir $b+$a verwenden? Dann ist das Ergebnis der Inhalt von $b.

$c = $b + $a;
print_r($c);

Array
(
    [0] => 4
    [1] => 5
    [2] => 6
)

Was sollen wir also tun, wenn wir ein Array wie 1,2,4,5,6 erhalten möchten? Richtig, verwenden Sie die Funktion array_merge(). Bitte achten Sie auf die Position des Array-Schlüssels:

$c = array_merge($a, $b);
print_r($c);

Array
(
    [0] => 1
    [1] => 2
    [2] => 4
    [3] => 5
    [4] => 6
)

$c = array_merge($b, $a);
print_r($c);

Array
(
    [0] => 4
    [1] => 5
    [2] => 6
    [3] => 1
    [4] => 2
)

Was ist, wenn es sich um ein Hash-Array in Form eines Schlüssels/Werts handelt? Das Ergebnis ist dasselbe: Es werden keine Schlüssel in $a zusammengeführt und dieselben Schlüssel werden nicht verarbeitet.

$a = ['a' => 1, 'b' => 2];
$b = ['a' => 4, 'b' => 5, 'c' => 6];

print_r($a+$b);

Array
(
    [a] => 1
    [b] => 2
    [c] => 6
)

$c = array_merge($a, $b);
print_r($c);

$c = array_merge($b, $a);
print_r($c);

Array
(
    [a] => 1
    [b] => 2
    [c] => 6
)
Array
(
    [a] => 4
    [b] => 5
    [c] => 6
)
Array
(
    [a] => 1
    [b] => 2
    [c] => 6
)

Für das obige Hash-Array ist das Ergebnis der Verwendung der Funktion array_merge() dasselbe wie das Ergebnis der Verwendung des +-Zeichens. Dies liegt daran, dass die Schlüssel immer noch verglichen werden. Daher fügt das zusammengeführte Array keinen Inhalt hinzu. Wenn der Index nicht definiert ist, wird er direkt mit einem numerischen Index hinzugefügt.

Abschließend versuchen wir es noch einmal mit der Operatorverbindung:

$c = $a . $b;
print_r($c);

ArrayArray

Okay, es hat keine besondere Bedeutung, Strings in String-Typen umzuwandeln und sie dann zusammenzufügen.

Testcode:

https://github.com/zhangyue0503/dev-blog/blob/master/php/201911/source/PHP%E4%B8%AD%E7%94%A8%2B%E5%8F%B7%E8%BF%9E%E6%8E%A5%E6%95%B0%E7%BB%84%E7%9A%84%E7%BB%93%E6%9E%9C%E6%98%AF%EF%BC%9F.php

Empfohlenes Lernen: php-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas ist das Ergebnis der Verwendung des +-Zeichens zum Verketten von Arrays in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:segmentfault.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen