Heim Backend-Entwicklung PHP-Problem So summieren Sie die Elemente zweier Arrays in PHP

So summieren Sie die Elemente zweier Arrays in PHP

Apr 26, 2023 am 10:21 AM

In PHP müssen wir manchmal die Elemente zweier Arrays summieren, und die beiden Arrays können unterschiedliche Längen haben. In diesem Artikel werden Ihnen zwei Methoden vorgestellt, um dieses Ziel zu erreichen.

Methode 1: for-Schleife verwenden

Diese Methode verwendet eine for-Schleife, um die Array-Elemente einzeln zu durchlaufen, die Elemente an den entsprechenden Positionen hinzuzufügen und sie in einem neuen Array zu speichern und schließlich das neue Array zurückzugeben. Der Code lautet wie folgt:

function sumArrays($arr1, $arr2) {
    $n1 = count($arr1);
    $n2 = count($arr2);

    $n = max($n1, $n2);
    $result = array();

    for ($i = 0; $i < $n; $i++) {
        $sum = 0;
        if ($i < $n1) {
            $sum += $arr1[$i];
        } 
        if ($i < $n2) {
            $sum += $arr2[$i];
        }
        array_push($result, $sum);
    }
    return $result;
}
Nach dem Login kopieren

Hier berechnen wir die Längen der beiden Arrays $n1$ bzw. $n2$ und nehmen dann den Maximalwert $n$ als Länge des neuen Arrays.

Als nächstes definieren wir in der for-Schleife zunächst $sum$ als 0 und bestimmen dann, ob der aktuelle Index $i$ kleiner als $n1$ oder $n2$ ist. Wenn ja, fügen wir das Element an der entsprechenden Position hinzu bis $sum$ Mitte. Speichern Sie abschließend $sum$ in einem neuen Array und geben Sie das Ergebnis zurück.

Methode 2: Verwenden Sie die Funktion array_map()

Diese Methode verwendet die Funktion array_map() und die anonyme Funktion von PHP. Die Funktion array_map() übergibt Elemente, die zwei Arrays entsprechen, als Argumente an eine anonyme Funktion, fügt sie dann hinzu und gibt ein neues Array zurück. Der Code lautet wie folgt:

function sumArrays($arr1, $arr2) {
    $n1 = count($arr1);
    $n2 = count($arr2);

    $n = max($n1, $n2);
    $result = array_map(function($a, $b) {
        return $a + $b;
    }, array_pad($arr1, $n, 0), array_pad($arr2, $n, 0));
    
    return $result;
}
Nach dem Login kopieren

Zuerst verwenden wir die Funktion count(), um die Längen $n1$ und $n2$ der beiden Arrays zu berechnen, und nehmen dann den Maximalwert $n$.

Dann verwenden wir die Funktion array_pad(), um beide Arrays auf die gleiche Länge aufzufüllen. Wenn eines der Arrays länger ist als das andere, füllen wir seinen leeren Raum mit Nullen.

Als nächstes rufen wir die Funktion array_map() und die anonyme Funktion auf und übergeben die beiden gefüllten Arrays als Parameter. Die anonyme Funktion fügt zwei entsprechende Elemente hinzu und gibt das Ergebnis zurück. Gibt schließlich $result$ zurück.

Diese Methode sieht prägnanter aus und verwendet integrierte Funktionen, ist jedoch möglicherweise langsamer als die erste Methode, wenn es um große Arrays geht.

Zusammenfassung

In diesem Artikel werden zwei Methoden zum Summieren zweier Array-Elemente in PHP vorgestellt. Methode eins verwendet eine for-Schleife, während Methode zwei die in PHP integrierte Funktion array_map() verwendet. Beide Methoden haben ihre eigenen Vor- und Nachteile, und Sie können die geeignete Methode entsprechend Ihren eigenen Bedürfnissen auswählen.

Das obige ist der detaillierte Inhalt vonSo summieren Sie die Elemente zweier Arrays in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
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

Heiße Artikel -Tags

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Was sind die besten Praktiken für die Deduplizierung von PHP -Arrays Was sind die besten Praktiken für die Deduplizierung von PHP -Arrays Mar 03, 2025 pm 04:41 PM

Was sind die besten Praktiken für die Deduplizierung von PHP -Arrays

Kann PHP Array -Deduplizierung die Einzigartigkeit der Schlüsselnamen nutzen? Kann PHP Array -Deduplizierung die Einzigartigkeit der Schlüsselnamen nutzen? Mar 03, 2025 pm 04:51 PM

Kann PHP Array -Deduplizierung die Einzigartigkeit der Schlüsselnamen nutzen?

Was sind die neuesten PHP -Codierungsstandards und Best Practices? Was sind die neuesten PHP -Codierungsstandards und Best Practices? Mar 10, 2025 pm 06:16 PM

Was sind die neuesten PHP -Codierungsstandards und Best Practices?

Muss die PHP -Array -Deduplizierung für Leistungsverluste in Betracht gezogen werden? Muss die PHP -Array -Deduplizierung für Leistungsverluste in Betracht gezogen werden? Mar 03, 2025 pm 04:47 PM

Muss die PHP -Array -Deduplizierung für Leistungsverluste in Betracht gezogen werden?

Wie arbeite ich mit PHP -Erweiterungen und PECL? Wie arbeite ich mit PHP -Erweiterungen und PECL? Mar 10, 2025 pm 06:12 PM

Wie arbeite ich mit PHP -Erweiterungen und PECL?

Wie implementieren Sie Nachrichtenwarteschlangen (Rabbitmq, Redis) in PHP? Wie implementieren Sie Nachrichtenwarteschlangen (Rabbitmq, Redis) in PHP? Mar 10, 2025 pm 06:15 PM

Wie implementieren Sie Nachrichtenwarteschlangen (Rabbitmq, Redis) in PHP?

Was sind die Optimierungstechniken für die Deduplizierung von PHP -Arrays Was sind die Optimierungstechniken für die Deduplizierung von PHP -Arrays Mar 03, 2025 pm 04:50 PM

Was sind die Optimierungstechniken für die Deduplizierung von PHP -Arrays

Wie kann man Reflection verwenden, um den PHP -Code zu analysieren und zu manipulieren? Wie kann man Reflection verwenden, um den PHP -Code zu analysieren und zu manipulieren? Mar 10, 2025 pm 06:12 PM

Wie kann man Reflection verwenden, um den PHP -Code zu analysieren und zu manipulieren?

See all articles