PHP podmínka - if else...
Zdravím
mám dotaz na který bohužel nenacházím na webu odpověď...
jde o klasickou podmínku a následný process:
if ($_POST['jmeno']=="ová")
$osloveni = "paní";
prostě z nějakého FORMuláře se odešlou vyplněné položky a jedna z nich je "jmeno", chtěl jsem nejdebilnějším způsobem krapet ulehčit práci tím že by tato podmínka zjistila, jestli "jmeno" končí na ová (případně elseif ova atd..), aby vepsal dobrý den "paní" jinak bude standardně "pane".
Akorát že == v podmínce porovnávají přesnou shodu - nikoliv "obsahuje-li".
Dotaz tedy zní jaký operand by měl být použit, aby platilo "?ová" ?
(dofám že jsem to popsal srozumitelně :) )
Re: PHP podmínka - if else...
/trochu OT
nebylo by hlavně lepší dát do podmínky jen, že končí "á"? Protože co potom třeba chudák taková paní Pokorná? :-)
/trochu OT
Re: PHP podmínka - if else...
jasně že... byl to příklad pro lepší pochopení
a je mi jasné že to nikdy nebude 100% - jde spíše o to, že to většinu vyřeší správně a těch pár případů, kdy to bude blbě, obchodník dořeší...
Re: PHP podmínka - if else...
Ajo, to bylo myšleno tím elseif, co? Čtu moc rychle..
Jinak zkus kouknout na tohle, to by snad mohlo fungovat: http://www.webcheatsheet.com/php/reg...xpressions.php
Re: PHP podmínka - if else...
A nešlo by to přes substr?
PHP kód:
substr ( string $string , int $start [, int $length ] )
Re: PHP podmínka - if else...
Šlo, ale není jednodušší napsat to s použitím regulárního výrazu, než psát něco jako
substr($_POST['jmeno'], strlen($_POST['jmeno'])-3, 3)?
Re: PHP podmínka - if else...
subtr + strlen by měl být rychlejší, ale v tomhle případě je to asi jedno jinak
Jak píše David, je dobré mít alespoň základní znalost reg. výrazů, hodně to usnadní život.
Kód:
if(preg_match('/ová$/',trim($surname))) {
}
Re: PHP podmínka - if else...
pánové já vám děkuji
jak koukám tak to php snad nikdy nepochopim :))))
Díky K+
(aha tak davidovi a mikovi musim dat K+ az nekdy priste...)
Re: PHP podmínka - if else...
A co takhle:
Kód:
$pole = array("vá", "ná", "ká");
if (in_array(substr($prijmeni, -2), $pole)) echo "Paní";
Výhodou je, že to můžeš postupně doplňovat, ev. použít větší pole 3 posledních znaků
Re: PHP podmínka - if else...
Stejně aby to bylo pořádně, tak tam musí být někde zaškrtávátko pohlaví (nebo rovnou v systému pro administrátory možnost zadat oslovení), protože vyfiltruješ pár případů a pak nastoupí cizinci a je to stejně v háji
Navíc to má hezkou odezvu v CRM, určitě potěší když dostanete perzonalizovaný email Vážený Ničiteli galaxií, Vaše božstvo aspol.