String auf eine bestimmte Zeichenlänge kürzen

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

  • #16
    mir ging es um die parameter, nicht um die beschreibung.

    bei verschachtelten aufrufen kannst du immer folgende transformation durchführen:
    Code:
    a = foo(bar())
    wird zu
    Code:
    b = bar()
    a = foo(b)

    Kommentar


    • #17
      Und was sagt mir nun das? Soviel ich verstehe, läuft das erst mit PHP Version 5. Aber im Manual steht ab PHP 4.
      Bin nun vollkommen

      Kommentar


      • #18
        Soviel ich verstehe, läuft das erst mit PHP Version 5.
        was "es"? woraus schließt du das?

        formuliere eine frage.

        Kommentar


        • #19
          Soviel ich verstehe, läuft das erst mit PHP Version 5.
          Ganz genau weil ich den Parameter $offset benutzt habe der erst in PHP 5 eingeführt wurde. Folgendes sollte auch unter PHP 4 funktionieren.
          PHP-Code:
          $text 'Dies ist ein langer langer langer Text.';
          echo 
          substr $text018 strlen strrchr substr $text18 ), ' ' ) ) ); 
          Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

          Kommentar


          • #20
            Nun das funktioniert auch nicht wie ich es möchte. Nun wird mir trotzdem das letzte Wort abgeschnitten, aber nicht erst nach 18 Zeichen.

            Kommentar


            • #21
              Hast du vielleicht irgendwas vergessen? Bei mir funktioniert das für jede Anzahl von Zeichen. Hast du genau das genommen was da steht?
              Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

              Kommentar


              • #22
                Nein. Habe mir das nun nochmals so kopiert und eingefügt. Aber die Kürzung ist sehr unterschiedlich, nicht aber erst beim 18 Zeichen.
                Verwende PHP Version 4.3.9
                Zuletzt geändert von AndreasS; 11.07.2007, 20:21.

                Kommentar


                • #23
                  Unterschiedlich? Was kommt den raus?
                  Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

                  Kommentar


                  • #24
                    Nun einmal steht: Ganz neu in B
                    also Kürzung nach dem 13 Zeichen und dann andere Text Kürzung nach dem 11 Zeichen und ein dritter Text der nach dem 15 Zeichen gekürzt wurde. Bei diesem Text währe das auch richtig!

                    Kommentar


                    • #25
                      http://heise.forenwiki.de/index.php?...ehler#h-Fehler

                      zeit doch mal den ursprungsstring.

                      Kommentar


                      • #26
                        Also den Fehler habe ich gefunden. Habe mir schnell ein paar Texte geschrieben. Also wenn der Text kleiner wie 18 Zeichen ist dann wird trotzdem gekürzt und das Wort abgeschnitten. Bei allen anderen Texten über 18 Zeichen wird richtig beim Leerzeichen gekürzt.

                        Kommentar


                        • #27
                          PHP-Code:
                          if (strlen($string) > 18) {
                           
                          //kürze
                          } else {
                            echo 
                          $string;

                          Es muss ja auch nicht gekürzt werden, wenn der String unter 18 Zeichen lang ist.

                          Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                          bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                          Wie man Fragen richtig stellt

                          Kommentar


                          • #28
                            Und noch was ist mir aufgefallen.
                            Beispieltext: Das tolle Programm im Fernseher ...
                            Nun kürzt das Script nicht nach Programm, sondern nach tolle, also die Ausgabe lautet: Das tolle
                            Aber ich denke, dass das kein Fehler ist.

                            Kommentar


                            • #29
                              hi,
                              @ AndreasS spricht irgendwas gegen wordwrap() ?

                              PHP-Code:
                              echo wordwrap($str20"<br />\n"); 

                              Kommentar


                              • #30
                                @K42B3
                                Ja, weil ich möchte nur die erste Zeile ausgeben. wordwrap() bricht den Text um in mehrere Zeilen. Das kann ich nicht gebrauchen. Darum mein komplizierter Code zu Anfang dieses Themas.

                                @all
                                Vielen Dank Ihr habt mir sehr geholfen. Nun funktioniert es wie gewünscht.

                                Irgendwann begreife auch ich vieleicht die einfachsten Funktionen von PHP.

                                Grüsse euch
                                Andreas

                                Kommentar

                                Lädt...
                                X