Heim  >  Fragen und Antworten  >  Hauptteil

Das Problem besteht darin, dass kein Wert mit PHP in der Schleife angehängt werden kann

Ich verwende PHP und PHPExcel, ich habe das folgende Array ($data), ich möchte den Array-Wert in PHP suchen und anhängen, zum Beispiel möchte ich den „Link“-Wert des Benutzers ändern (möchte hinzufügen „ txt“ nach dem vorherigen Wert“), deren E-Mail-ID „cde@gmail.com“ ist, aber nicht ordnungsgemäß funktioniert. Ich meine, nach dem Aktualisieren der Seite wird der vorherige „Anhänge“-Wert entfernt und der aktuelle Wert angehängt, den ich aber behalten möchte der vorherige Wert, was soll ich tun? Das ist mein aktuelles Sortiment

Array
(
    [0] => Array
        (
            [email] => abc@gmail.com
            [link] => abc,xyz,def
         )

    [1] => Array
        (
            [email] => cde@gmail.com
            [link] => cde,abb
        )
...

Gewünschtes Ergebnis (Hinzufügen von „bbb“ und Entfernen von „abb“)

Array
(
    [0] => Array
        (
            [email] => abc@gmail.com
            [link] => abc,xyz,def
         )

    [1] => Array
        (
            [email] => cde@gmail.com
            [link] => cde,abb,bbb
        )
...

Ich habe den folgenden Code ausprobiert, aber er „entfernt“ den vorherigen Wert („abb“) und ich möchte, dass der neue Wert an den vorherigen Wert angehängt wird

$searchEmail = 'cde@gmail.com';
$appendString = 'bbb';
foreach ($set_excel_query_all as $key => &$item) {
   if ($item['email'] == $searchEmail) {
      $item['link'] .= ',' . $appendString;
      break;
   }
}
unset($item);

P粉478835592P粉478835592423 Tage vor592

Antworte allen(1)Ich werde antworten

  • P粉098417223

    P粉0984172232023-09-14 16:03:47

    我昨天遇到了相同的错误,和你在这里犯了相同的错误。 尝试这段代码

    $searchEmail = 'cde@gmail.com';
    $appendString = 'bbb';
    foreach ($set_excel_query_all as $key => $item) {
    if ($item['email'] == $searchEmail) {
      $set_excel_query_all[$key]['link'] .= ',' . $appendString;
      break;
    }
    }
    unset($item);

    Antwort
    0
  • StornierenAntwort