Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Jak podzielić wyraz np. co 3 znaki?
Forum PHP.pl > Forum > Przedszkole
piotrek24
Mam np. taki ciag znaków: "alamakota"

I chce go podzielic co trzy znaki na: "ala", "mak", "ota"

Pytam bo nie mogę znaleść żadnej funkci do tego. Wszystkie te explode i spli dzielą według jakiegoś znaku, kropki czy czego tam sie chce ale nie znalazłem funkcji do podzielanie ciągu tak po prostu co ileś tam znaków.
koodlaty
moze tak smile.gif :

  1. <?php
  2. $abc = 'alamakotaalamakotaalamakotaalamakotaalamakota';
  3.  
  4. for($t = 0, $x=3, $y=0; isset($abc[$t]); $t++)
  5. {
  6. if($t == $x)
  7. {
  8. $x = $t +3;
  9. $t--;
  10. $y++; 
  11. }else
  12. $tablica_wynik[$y] .= $abc[$t];
  13. }
  14. ?>


albo lepiej tak (by xpil):

  1. <?php
  2. $abc = 'alamakotaalamakotaalamakotaalamakotaalamakota';
  3.  
  4. for($i=0;$i<strlen($abc);$i+=3)
  5. {
  6. $tablica_wynik[]=$abc[$i] . $abc[$i+1] . $abc[$i+2];
  7. }
  8. ?>
mike
Słabo szukacie chłopaki, słabo.
A rezultatem są tekie dziwolągi jak ~koodlaty napisał.
Bo pisanie tego co daje język to dziwoląg tongue.gif

str_split

P.S.
Proszę poprawić temat wątku.
Zasady panujące na forum Przedszkole
piotrek24
OK no dzięki tak zapewne też można to zrobić

Choć nie chce mi się wierzyć że nie ma do tego odpowiedniej funkcji i właśnie przeglądam wszystkie funkcje dotyczące stringów na php.net

chodzi o funkcje typu:

  1. <?php
  2. $wynik = funkcja_do_dzielenia_wyrazow("tu co ile znaków chcesz podzielić wyraz", "a tu wyraz");
  3. ?>


no ale jak nic nie znajde to pozostanie mi skorzystać z Twoich sposobów smile.gif
koodlaty
Oj tam od razu dziwoląg, dziwoląg... Inwencja twórcza! smile.gif
piotrek24
Cytat(mike_mech @ 22.09.2006, 12:02:15 ) *
Słabo szukacie chłopaki, słabo.
A rezultatem są tekie dziwolągi jak ~koodlaty napisał.
Bo pisanie tego co daje język to dziwoląg tongue.gif

str_split


No wiesz to taka mało poularna funkcja którą naprawdę ciężko znaleść

na hasło explode() google.pl daje 109.000 wyników a na str_split() tylko 269 smile.gif

Tak czy inaczej dziękuje za podanie funkcji której tyle czasu szukałem (nie tracąc ani przez chwile nadziei na jej istnienie) biggrin.gif

Jest tylko jeden problem...

to funkcja dostępna tylko w... PHP5! sadsmiley02.gif

Ale znalazłem pewną funkcje dostępną od php 3... ileś tam

chunk_split();

tylko że ona nie daje wyniku w postaci tabeli ale działa bardzo ładnie w połaczeniu z funkcją explode();

  1. <?php
  2. $wyraz = 'alamakota';
  3.  
  4. $podziel = explode(" ", chunk_split("$wyraz", "3", " "));
  5.  
  6. print_r($podziel);
  7. ?>


da wynik:

  1. Array ( [0] => ala [1] => mak [2] => ota [3] => )


guitar.gif
zdzichu
<OT>
Cytat
Jest tylko jeden problem...

to funkcja dostępna tylko w... PHP5!

to jest problem? sorry, ale najwyższy czas przejść na php5....
</OT>
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.