2 Stimmen

PHP foreach Hilfe

Hallo Ich habe ein Array, das wie folgt aussieht,

    Array
(
    [cfi_title] => Mr
    [cfi_firstname] => Firstname
    [cfi_surname] => Lastname
    [cfi_email] => test@test.co.uk
    [cfi_subscribe_promotional] => 
    [cfi_tnc] => 
    [friendsName] => Array
        (
            [0] => Firstname 1
            [1] => Firstname 2
            [2] => Firstname 3
        )

    [friendsEmail] => Array
        (
            [0] => email1@address.com
            [1] => email2@address.com
            [2] => email3@address.com
        )

    [submit_form] => Submit
)

Mein Dilemma ist ich brauche, um die Werte aus den friendsName und friendsEmail Arrays in eine Datenbank zu speichern, ich weiß, ich kann Schleife durch sie, aber wie kann ich die passenden Daten senden, zum Beispiel muss ich speichern [friendsName][0] y friendsEmail][0] in derselben Zeile der Datenbank?

Ich weiß, dass ich ein foreach verwenden muss, aber ich komme einfach nicht aus der Logik heraus.

4voto

Lizard Punkte 41632
foreach($friendsName as $key=>$val) {
    $friend = $val;
    $email = friendsEmail[$key];
}

または

$count = count($friendsName);
for($i = 0; $i< $count; ++$i) {
    $friend = $friendsName[$i];
    $email = $friendsEmail[$i];
}

In jedem der obigen Beispiele wird davon ausgegangen, dass der Array-Schlüssel die übereinstimmende Kennung zwischen den beiden Datenbits ist

0voto

Vollständige Lösung

//Prepare an array for the collected data
$data = array();

//Loop through each of your friends names
foreach($array['friendsName'] as $key => $value)
{
    //Save the name as part of an associative array, using the key as an identifier
    $data[$key] = array("name" => $value);
}
//Loop through the emails
foreach($array['friendsEmail'] as $key => $value)
{
    //The array is allready there so just save the email
    $data[$key]['email'] = $value;
}

$data enthält nun Ihre gepaarten Werte.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X