Autor Zpráva
oogi
Profil *
Potřebuju nahradit v proměnné písmena s diakritikou stejnými písmeny bez diakritiky a speciální znaky jako .,)("-:><!? odstranit z proměnné...
Nemůžu si vzpomenout jak se to dělá...
Prosím poraďte...
k
Profil *
preg_replace()
oogi
Profil *
A něco jinýho kromě regulárních znaků není?
PetrX
Profil *
A co třeba takto:
$text = 'text, který chceš převést';
$hledej = array ('á','č','ď','é','ě','í','ň','ó','ř','š','ť','ú','ů','ý','ž','.',',',' )','(','"','-',':','>','<','!','?');
$nahrad = array ('a','c','d','e','e','i','n','o','r','s','t','u','u','y','z','','','', '','','','','','','','');
$vysledek = str_replace($hledej, $nahrad, $text);
k
Profil *
PetrX
:) Muzu se zeptat jaky je rozdil mezi mym a tvym resenim?
PetrX
Profil *
Jen jsem to trochu rozepsal, aby to bylo jasnejsi a pouzil jsem funkci str_replace. Prijde mi to jednodusi a logictejsi.
oogi
Profil *
k
jsem to hned nepochopil
PetrX
A hned se cejtim doma...

Díky, snad už to dám dohromady...
k
Profil *
:)
No.. radsi nic.


oogi
pokud to budes delat podle PetraX tak misto str_replace napis preg_replace a v poli $hledej vsude pridej /pismeno/i takze napr. /č/i

preg_replace je rychlejsi nez str_replace a diky tomu /i to bude case sensitive

Nectel jsem ti psat hotove reseni - psal si, ze si jen nemuzes vzpomenout.
PetrX
Profil *
k
tak se hned necerti, nejsem zadny expert v PHP, jen sem chtel nastinit reseni a ohledne toho ze je preg_replace rychlejsi mi zase v jinych diskuzi radili at pouziji radeji str_replace takze ted babo rad a vim prd, no nic radsi uz se do toho nebudu michat a pujdu si nastudovat opet PHP :(
k
Profil *
PetrX
Ne tak jsem to nemyslel - vubec se necertim.
oogi je jiste rad za tve hotove reseni a ja mu poradil jak ho vylepsit.
Proto je to zde diskusni forum. Vse je v naprostem poradku.
oogi
Profil *
k
Takže když tam nedám to zpětné lomítko tak to bude fungovat pro velká i malá písmena?
No, nemohl jsem si vzpomenout na fci, a koukám že jsem ji zapomněl úplně celou....
oogi
Profil *
ta fce preg_replace mi tam hazi pořád chyby.... co tam dělám blbě???

$hledej = array ('/á/i','/č/i','/ď/i','/é/i','/ě/i','/í/i','/ň/i','/ó/i','/ř/i','/š/i' ,'/ť/i','/ú/i','/ů/i','/ý/i','/ž/i','/./i','/lomeno/i','/nic/i','/)/i' ,'/(/i','/"/i','/-/i','/:/i','/>/i','/</i','/!/i','/?/i','/ /i');
$nahrad = array ('a','c','d','e','e','i','n','o','r','s','t','u','u','y','z','','','', '','','','','','','','','-');
$novytext = preg_replace($hledej, $nahrad, $text;);

A jak v ni mam zapsat "lomeno" ?
pmasarik
Profil
http://php.vrana.cz/vytvoreni-pratelskeho-url.php
oogi
Profil *
pmasarik
Hmm, to je blbý, mam nižši PHP než 4.4... proto to asi zlobi...

Nevite o něčem podobnym přes eregi_replace ?
Toto téma je uzamčeno. Odpověď nelze zaslat.