2017-05-08 9 views
1

Ich habe 3 explodieren Aussagen:assoziierte PHP-Index mit einem anderen Array

$emails = explode(',', $row['email']); 
$firstnames = explode(',', $row['first_name']); 
$lastnames = explode(',', $row['last_name']); 

jedes explode erzeugt drei (3) Anordnungen:

//emails 
Array 
(
    [0] => [email protected] 
    [1] => [email protected] 
    [2] => [email protected] 
    [3] => [email protected] 
) 

//first name 
Array 
(
    [0] => Bill 
    [1] => Jake 
    [2] => John 
    [3] => Bob 
) 

//last name 
Array 
(
    [0] => Jones 
    [1] => Smith 
    [2] => Johnson 
    [3] => Bakers 
) 

I kann die eine Array leicht wie folgt erhalten: zum Beispiel :

foreach ($emails as $email) { 
    echo $email; 
} 

Das wird die E-Mails aussprechen. Aber ich möchte hinzufügen $firstname und $lastname hinein. Ich möchte zum Beispiel:

[email protected] Bill Jones 

Wie kann ich es tun?

Antwort

2

foreach kann einen Schlüssel und Wert zuweisen, wenn Sie die entsprechende Syntax verwenden:

foreach ($emails as $key => $email) { 
    echo $email; 
    echo $firstnames[$key]; 
    echo $lastnames[$key]; 
} 

Das nächste Mal im Handbuch: http://php.net/manual/en/control-structures.foreach.php, da dies an der Spitze gezeigt.

Wie Pyromonk wies darauf hin, in Situationen nützlich, in denen Sie Arrays indiziert:

for ($i = 0, $n = count($emails); $i < $n; $i++) { 
    echo $emails[$i]; 
    echo $firstnames[$i]; 
    echo $lastnames[$i]; 
} 
+0

Alternativ kann eine 'for' Schleife statt' foreach' verwendet werden könnte, wie es in diesem mehr Sinn machen würde, Kontext. – Pyromonk

Verwandte Themen