PHP: Rozpoznawanie płci
Dodano: 26 lipca 2010 • 1362 wyświetleń • 5 komentarzy
Dzisiaj pokażę małą funkcję, która rozpozna płeć po imieniu. Nie jest z tym wiele pracy, a przydaje się, kiedy na stronie zwracamy się do użytkownika. Taka funkcja pozwoli m.in. na szybkie wybranie końcówki wyrazu.
Jak już mówiłem, funkcja jest bardzo krótka. Ale najpierw powiem po czym rozpoznajemy płeć. Po tym, że imię kobiety zawsze kończy się na literę "a". W takim razie, potrzebne nam będzie wyrażenie regularne.
function getGender($name) {
$ex=explode(' ',$name);
if (preg_match('#(.+?)a$#D',$ex[0])) {
return 1;
} else {
return 0;
}
}
W tym przypadku kobieta oznaczona jest liczbą 1, a mężczyzna 0. Wynik takiej funkcji można przekazać np. do funkcji, która zajmie się odpowiednim dobraniem końcówki wyrazu bądź znaczka płci przy nicku.
Przedstawię tutaj pierwszy z podanych przeze mnie przykładów użycia naszej funkcji.
function ends($gender) {
if ($gender==1) {
$array=array("a","ęła");
} else {
$array=array(null,"ął");
}
return $array;
}
Jak widzimy, na podstawie wyniku otrzymanego z funkcji getGender, dostaniemy w odpowiedzi tablicę z końcówkami. Wystarczy tylko użyć odpowiedniej. Np. w wyrazie rozpoczęła/rozpoczął, użyjemy drugiej końcówki, która będzie miała indeks 1 w tablicy.
To by było tyle. Mam nadzieję, że się przyda i życzę owocnej pracy w rozwijaniu możliwości funkcji.
Zobacz również:
Komentarze
Napisz komentarz
O mnie: Nazywam się Kacper Kołodziej. Jestem uczniem II klasy II LO w Pabianicach o profilu matematyczno-fizycznym. Od 7 lat gram na gitarze. Skończyłem Państwową Szkołę Muzyczną I stopnia w Pabianicach; aktualnie jestem w trzeciej klasie szkoły II stopnia. Oprócz muzyki zajmuję się także tworzeniem stron. Moje prace można obejrzeć w portfolio.
O blogu: Na tym blogu publikuję wszystkie artykuły mojego autorstwa dotyczące programowania, tworzenia stron www, komputerów i internetu, a także muzyki.




Jan Pogocki strona www Mozilla/5.0 (Windows; U; Windows NT 6.1; pl; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8
PS. Widzę, że zrezygnowałeś z reCAPTACHA na rzecz własnego tokena. Czyżby reCAPTACHA przepuszczała spam?
26 lipca 2010 o 10:52:49
Kacper Kołodziej strona www Mozilla/5.0 (X11; U; Linux i686; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.99 Safari/533.4
26 lipca 2010 o 11:22:01
Jan Pogocki strona www Mozilla/5.0 (Windows; U; Windows NT 6.1; pl; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8
26 lipca 2010 o 14:08:26
Kacper Kołodziej strona www Mozilla/5.0 (X11; U; Linux i686; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.99 Safari/533.4
26 lipca 2010 o 15:33:55
Paweł Lis Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8 ( .NET CLR 3.5.30729)
Poza tym zazdroszczę ci znajomości wyrażeń regularnych, mi najprostsze zajmuje czasem godzinę :D
16 sierpnia 2010 o 12:44:17