Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Teil eines Strings umwandeln

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Teil eines Strings umwandeln

    Hallo,

    ich kriege folgendes nicht hin:
    Ich möchte einen Teil eines Strings umwandeln, z.B. soll
    Code:
    [Begrüßung, vorname=Max, nachname=Muster]
    durch
    PHP-Code:
    <?php echo "Hallo Max Muster!"?>
    ersetzt werden.

    Bin für jede Hilfe dankbar!

  • #2
    Da beschäftigst du dich am besten mal mit regulären Ausdrücken: Der RegExp-Evaluator - RegExp-Tutorial.

    Woher kommt der String?

    Gruß
    [URL]http://hallophp.de[/URL]

    Kommentar


    • #3
      Danke, werde mich da mal weiter einarbeiten.
      Der String kommt aus einer Textarea.

      Kommentar


      • #4
        Warum wird bei bei folgendem Script im Browser kein php ausgeführt?
        PHP-Code:
        <?php
        $string 
        "davor [b]text[/b] dahinter";
        $string preg_replace('/\[b\](.*?)\[\/b\]/''<strong>$1</strong> <?php echo "Hallo Welt!"; ?>'$string);
        echo 
        $string;
        ?>
        Zwar bekommt man im Quelltext die Ausgabe
        Code:
        davor <strong>text</strong> <?php echo "Hallo Welt!"; ?> dahinter
        allerdings wird echo nicht ausgeführt.
        Woran liegt das?

        Kommentar


        • #5
          PHP wird nicht verschachtelt ausgeführt.

          PHP-Code:
          $string = '<?php echo $string?>'; 
          echo $string; // Endlosschleife.
          [COLOR="#F5F5FF"]--[/COLOR]
          [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
          „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
          [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
          [COLOR="#F5F5FF"]
          --[/COLOR]

          Kommentar


          • #6
            Und wie kann ich das ändern?

            Kommentar


            • #7
              Gar nicht, wenn Du vernünftig programmieren willst.
              Wenn Du vernünftig programmieren willst, brauchst Du das auch nicht.
              [COLOR="#F5F5FF"]--[/COLOR]
              [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
              „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
              [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
              [COLOR="#F5F5FF"]
              --[/COLOR]

              Kommentar


              • #8
                Du kannst eval benutzen:
                PHP-Code:
                $string 'echo "Hallo Welt!";';
                eval(
                $string); 
                oder einfach das Hallo Welt direkt ausgeben:
                PHP-Code:
                $string 'Hallo Welt"';
                echo 
                $string
                Signatur:
                PHP-Code:
                $s '0048656c6c6f20576f726c64';
                while(
                $i=substr($s=substr($s,2),0,2))echo"&#x00$i;"

                Kommentar


                • #9
                  PHP-Code:
                  <?php echo "Hallo Welt!"?>
                  gibt den String "Hallo Welt" aus.
                  Gwünschtes Ergebnis ist also
                  Code:
                  davor <strong>text</strong> Hallo Welt! dahinter
                  Warum schreibst du dass dann nicht so hin?
                  Code:
                  <strong>$1</strong> Hallo Welt!
                  ?
                  [IMG]http://media.ubuntuusers.de/portal/files/ubuntu.png[/IMG][IMG]http://sqlmanager.net/i/ico/mysql.gif[/IMG][SIGPIC][/SIGPIC]

                  Kommentar


                  • #10
                    Danke für die Antworten.
                    Wie gesagt, möchte ich eigentlich [Begrüßung, vorname=Max, nachname=Muster] umschreiben.
                    "Begrüßung" soll dabei für eine php-Funktionen stehen. Über "vorname=, nachname=" soll der Benutzer die Möglichkeit erhalten, Variablen zu definieren.
                    Also z.B.
                    PHP-Code:
                    $vorname "Max";
                    $nachname "Muster";
                    echo 
                    "Hallo $vorname $nachname"

                    Kommentar


                    • #11
                      Sorry, aber was haben
                      Code:
                      [Begrüßung, vorname=Max, nachname=Muster]
                      und
                      PHP-Code:
                      $vorname "Max";
                      $nachname "Muster";
                      echo 
                      "Hallo $vorname $nachname"
                      gemein? Erkenne da keinen Zusammenhang.
                      [COLOR="#F5F5FF"]--[/COLOR]
                      [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
                      „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                      [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
                      [COLOR="#F5F5FF"]
                      --[/COLOR]

                      Kommentar


                      • #12
                        Er hat einen Text und will daraus irgendwelche Funktionen ausführen:
                        Code:
                        akjs dakshj d [Begrüßung, vorname=Max, nachname=Muster] lakjs hdalksj
                        Nun wird das hier rausgefiltert:
                        Code:
                        [Begrüßung, vorname=Max, nachname=Muster]
                        Der erste Teil "Begrüßung" ist dann der Funktionsname und der Rest die Parameter.

                        PHP-Code:
                        function /*Begrüßung*/($vorname$nachname) {
                        return 
                        "Hallo $vorname $nachname";  

                        Das was die Funktion zurückgibt ersetzt dann dieses [...] Konstrukt.

                        Soweit hab ich das verstanden.
                        Signatur:
                        PHP-Code:
                        $s '0048656c6c6f20576f726c64';
                        while(
                        $i=substr($s=substr($s,2),0,2))echo"&#x00$i;"

                        Kommentar


                        • #13
                          Genau.

                          Kommentar


                          • #14
                            PHP: preg_replace_callback - Manual wäre dann doch genau das richtig ?
                            Signatur:
                            PHP-Code:
                            $s '0048656c6c6f20576f726c64';
                            while(
                            $i=substr($s=substr($s,2),0,2))echo"&#x00$i;"

                            Kommentar


                            • #15
                              Der erste Teil "Begrüßung" ist dann der Funktionsname und der Rest die Parameter
                              call-user-func

                              sowas ?
                              AFFE ist nur im Dezimalsystem ein Palindrom.

                              Kommentar

                              Lädt...
                              X