Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Długość najdłuższego słowa w łańcuchu
Forum PHP.pl > Forum > Przedszkole
m.d.
Mam pytanie. Jak sprawdzic tj. wyswietlic ile? ( w znakach ) mial najdluzszy wyraz w stringu...

Np. Mam cod
  1. <?php
  2.  
  3. $slowo=&#092;"Dowolny string zawierający kilkanaście wyrazów\";
  4.  
  5. ?>


I chce zeby mi wyrzuciło, że najdłuższy wyraz ma: ( w tym przypadku ) 11 znaków.

Pytam bo zastanawia mnie najbardziej optymalna metoda, tj metoda która się sprawdzi z dużą liczbów wyrazów w stringu.

Pozdrawiam i dzieki za odp.
zombie
możnaby explode" title="Zobacz w manualu PHP" target="_manual'owac spacje, wrzucić dp tablicy strlen" title="Zobacz w manualu PHP" target="_manual'y posort" title="Zobacz w manualu PHP" target="_manualowac i wyswietlic pierwszy ...
mike
A nie lapiej użyć str_word_count() ?

Ja bym zrobił coś w tym stylu:
  1. <?php
  2.  
  3. $strContent = 'To jest jakiś tekst.';
  4.  
  5. $arrWords = str_word_count( $strContent, 1 );
  6.  
  7. $intSizeOfLongestWord = 0;
  8. $keyOfLongestWord = 0;
  9.  
  10. foreach( $arrWords as $intKey => $strWord )
  11. {
  12. if( $intSizeOfLongestWord <= strlen( $strWord ) )
  13. {
  14. $intSizeOfLongestWord = strlen( $strWord );
  15. $keyOfLongestWord = $intKey;
  16. }
  17. }
  18.  
  19. echo 'Najdłuższe słowo - \"' . $arrWords[ $keyOfLongestWord ] . '\" - ma ' . $intSizeOfLongestWord . ' znaków.';
  20.  
  21. ?>
zombie
lepiej... jak się ma php 4 >= 4.3.0 winksmiley.jpg
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.