Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]litera odpowiada innej literze
Forum PHP.pl > Forum > Przedszkole
gosc
Jak zrobic taki skrypt (chyba dosyc prosty) zeby podmienial litery innymi? Mianowicie: q=m, w=n, e=b, r=v, t=c, y=x, u=z itd., chodzi o to zeby nie bylo qwertyuiopasdfghjklzxcvbnm tylko mnbvcxzlkjhgfdsapoiuytrewq, czyli od konca. Czyli w skrócie wpisujemy słowo: test, a otrzymujemy cbgc
Cienki1980
Zajrzyj do manuala do funkcji str_replace
lobopol
str_replace w tym momencie nie pomoże jak ma podmienić kolejność całego alfabetu to się ponadpisują. Na szybko rozwiązanie jakie mi przyszło do głowy to działąnie na stringu jak na tablicy coś w stylu:
  1. $a = 'abaab';
  2. function change($sString){
  3. $sChanged = '';
  4. $aTo = array(
  5. 'a' => 'z',
  6. 'b' => 'y'
  7. );
  8. for($i = 0; $i<mb_strlen($sString, 'Utf-8'); $i++){
  9. //aby nie było za łatwo ten fragment usunąłem :)
  10. }
  11. return $sChanged;
  12. }
  13. echo change($a);
Cienki1980
Cytat(lobopol @ 24.07.2011, 19:06:56 ) *
str_replace w tym momencie nie pomoże jak ma podmienić kolejność całego alfabetu to się ponadpisują. Na szybko rozwiązanie jakie mi przyszło do głowy to działąnie na stringu jak na tablicy coś w stylu:


str_replace zadziała bardzo dobrze. Można podać przecież jako parametry search i replace tablice i działać będzie pięknie.
Gość
Cienki1980:
A jak to zrobic str_replacem?
lobopol
ale zakładając, że masz tablicę
  1. $search = array('a','b','c','d');
  2. $change= array('d','c', 'b','a');
  3. $dozmiany = 'aabcd';
  4. echo str_replace($search, $change, $dozmiany);die();

To wynikiem zamiany będzie aabba, z nie ddcba. Ja nie wiem jak ty byś to chciał samym str_replacem zrobić
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.