[php] string in stukken knippen

Pagina: 1
Acties:

  • maartenvdv737
  • Registratie: Augustus 2000
  • Laatst online: 17-08 15:34
Ik dacht dat ik hier al vaak genoeg topics over gezien heb, maar nu ik er naar zoek kan ik het niet vinden.

Ik heb de volgende recursieve functie geschreven om te lange woorden in een string af te kappen, zodat de tabel layout niet naar de knoppen gaat.

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    function cut_string($str, $length) {
      $array = explode (" ", $str);
      $newstring = "";

      for($i=0;$i < count($array); $i++){
        if (strlen($array[$i]) > $length){
         $newstring .= substr($array[$i],0,$length)." ".cut_string(substr($array[$i],26,strlen($array[$i])), $length);
        }
        else{
         $newstring .= " ".$array[$i];
        }
      }
      return $newstring;
    }



Weet iemand nog of het sneller kan? Met een kleine string gaat dit nog wel, maar als de string een paar duizend woorden is, wordt het wat vervelend.

edit:
misschien ook iets voor GOT :P

Ik blijf er iig vrij nuchter onder....


  • Expander
  • Registratie: Februari 2001
  • Niet online
Een substr(string, int) gebruiken?

Expanding the inexpandable


  • Apollo_Futurae
  • Registratie: November 2000
  • Niet online

Pas de replâtrage, la structure est pourrie.


  • maartenvdv737
  • Registratie: Augustus 2000
  • Laatst online: 17-08 15:34
Lekker is dat :P
Vond die van mij ook wel mooi. Misschien zit er wel dezelfde functie achter.

Hou ik de mijne gewoon, heb ik er mooi auteursrechten over :P

Ik blijf er iig vrij nuchter onder....


  • MisterData
  • Registratie: September 2001
  • Laatst online: 26-08 21:52

  • dusty
  • Registratie: Mei 2000
  • Laatst online: 21-02 00:06

dusty

Celebrate Life!

Grappig.. eerst alles opdelen in de woorden, en dan elke woord apart doorlopen? ;)

Wat dacht je van een methode om de eerst volgende spatie te zoeken, is deze groter dan $length weg. Dan weet je dus dat je moet splitten, zo niet dan ga je fijn verder met de volgende gedeelte van de string (alles achter de eerst volgende spatie).

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR

Pagina: 1