Ersatz für str_split

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Ersatz für str_split

    Hallo ich habe in PHP 5 ein Skript geschrieben, bei dem ich mir eine SQL Abfrage zusammenbaue. Das letzte (überflüssige) Komma entferne ich dann mit str_split
    PHP-Code:
    $sql_array=str_split($sql,(strlen($sql)-2)); 
    Leider verwendet mein Provider noch PHP 4 -> dieses unterstützt str_split nicht - kann mir jemand eine alternativlösung sagen?
    ich habe schon gesucht baer nichts gefunden.
    Danke!

  • #2
    http://www.php.net/preg_replace

    Zeig mal den String von dem du das Komma entfernen möchtest

    Kommentar


    • #3
      der string ist dynamisch

      hier mal nen beispiel:

      UPDATE mitglieder SET street = 'Taubenweg ', ort_id = '3',


      ich glaube nicht, dass das über die art des zeichens (komma) geht, da davon mehrere vorkommen, das einzigste das geht ist denk ich mal die länge des strings

      Kommentar


      • #4
        Code:
        $string = preg_replace("/,$/", "", $string);
        entfernt das Komma wenn es ganz am ende des strings vorkommt. Wenn noch was dahinter kommt / kommen kann, müsste man die funktion abändern

        Kommentar


        • #5
          thx

          Kommentar


          • #6
            $str{strlen($str)-1} = ' '; // beachte die geschweiften Klammern. Vielleicht geht sogar $str{strlen($str)-1} = ''; analog zu dem, was im PHP Manual / Types / Strings zu character access steht.

            Weitere Möglichkeit, um es programmlich einfach zu haben, besteht darin, das Komma VOR dem feld=value dynamisch zu generieren, AUSSER vor dem ersten feld. Dazu braucht es ein flag "$erstesFeld".

            Kommentar


            • #7
              Weitere Möglichkeit, um es programmlich einfach zu haben, besteht darin, das Komma VOR dem feld=value dynamisch zu generieren, AUSSER vor dem ersten feld. Dazu braucht es ein flag "$erstesFeld".
              Na, das macht man ganz easy mit implode. keine flags, keine überflüssigen kommas.

              Kommentar


              • #8
                implode ist eine weitere Variante. Frage, was strukturierteren Code gibt, und was mit weniger Wissen bzw. Manual zugänglich ist. Keine Kommas, keine flags, dafür ein a=array(), ein a[] anstatt ein .=, implode und evtl ein unset(a).

                Kommentar


                • #9
                  Und ein simples rtrim() hätte das Komma ja auch wegputzen können ...
                  I don't believe in rebirth. Actually, I never did in my whole lives.

                  Kommentar


                  • #10
                    THX

                    Kommentar

                    Lädt...
                    X