php Schleife durch ein Array

  • Ich habe ein Array, das Zahlen wie "331.554,22" oder "45" enthält. Angenommen, das Array heißt $numbers.

    Ich möchte das Array durchlaufen und für jede Zahl oder jeden Eintrag darin eine SQL-Abfrage wie

     UPDATE members SET x=1 where id=$numbers[x]
     
    durchführen

    Könnte mir jemand weiterhelfen?

    UPDATE: Angenommen, ich speichere die Abfragewerte in einem Textfeld in meiner Datenbank mit dem Namen nums und es sieht so aus. "45,656,23", wie würde ich das in ein Array-Format konvertieren?

    22 November 2011
    bacchus
4 answers
  • Wenn das verifizierbare "331,554,22" kein Array (String) ist, explodiert es zuerst

     $numbers = explode(',',$numbers);
     

    und dann.

    Foreach:

      foreach ($numbers as $number)
            {
              //query like  SET x=1 where id=$number
            }
     

    Für:

         for($i = 0; $i < count($numbers); $i++)
        {
           //query like  SET x=1 where id=$numbers[$i]
        }
     

    Wenn x immer 1 ist, können Sie in

    verwenden
     $query = "UPDATE table SET x = 1 WHERE id  IN(" . implode(',',$numbers)  . ")"
     

    und wenn die Variable $numbers ein String ist und x für jede ID 1 ist, vergessen Sie alles, was ich geschrieben habe und versuchen Sie es nur:)

     $query = "UPDATE table SET x = 1 WHERE id  IN({$numbers})"
     
    22 November 2011
    Tufan Barış Yıldırım
  •  foreach ($ zahlen als $ number) {
     $ sql = "UPDATE some_table SET X = 1 WHERE id =". $ number 
    } 
     

    Ich hoffe es hilft

    22 November 2011
    Sudhir Bastakoti
  •  $query = "UPDATE members SET x=1 WHERE id IN(".implode( ",", $numbers).")";
     

    Es ist eine Zeichenfolge, also explodiere ich

     $query = "UPDATE members SET x=1 WHERE id IN({$numbers})";
     
    22 November 2011
    Esailija
  •  <?php
    
    $numbers = array(25, 658, 968, 548, 698, 365);
    
    foreach($numbers as $number){
     echo "UPDATE members SET x=1 where id=$number\n";
    }
    
    ?>
     

    OUTPUT

      UPDATE members SET x=1 where id=25 
     UPDATE members SET x=1 where id=658
     UPDATE members SET x=1 where id=968 
     UPDATE members SET x=1 where id=548 
     UPDATE members SET x=1 where id=698 
     UPDATE members SET x=1 where id=365
     
    22 November 2011
    Jose Vegaᾠῗᵲᄐᶌ