[ Pobierz całość w formacie PDF ]
.3Autorowi chodzi o to, że funkcja sprawdza, czy podany adres e-mail ma prawidÅ‚owy format.Funkcjanie sprawdza, czy pod podany adres rzeczywiÅ›cie można wysÅ‚ać list e-mail przyp.tÅ‚um.RozdziaÅ‚ 5.JÄ™zyk PHP 129Znasz już wszystkie polecenia użyte w tym przykÅ‚adzie; wytÅ‚umaczyć musz¹ tylko wyrażenieregularne.Dla każdego, kto jeszcze nie przywykÅ‚ do wyrażeÅ„ regularnych, może ono wyglÄ…-dać jak niezrozumiaÅ‚y zbiór znaków.JeÅ›li podzielisz je na kilka cz¹Å›ci, to Å‚atwiej zrozumiesz.Podstawowym elementem wyrażenia regularnego wydaje si¹ być zmienna.Jestona równa klasie znaków zawierajÄ…cej wszystkie znaki alfanumeryczne.To podstawowy ele-ment adresu e-mail.Na przykÅ‚ad w fikcyjnym adresie e-mail s.harlenhopp_sales39840@mainstreet.sticksville.ok.us.widgets-r-us.com każda jego cz¹Å›Ä‡, która nie zawiera kreski, podkreÅ›le-nia, kropki lub znaku @, mieÅ›ci si¹ w tej kategorii.Innymi sÅ‚owy podstawowym elementemjest wszystko, co jest liczbÄ… lub literÄ….Zauważ, że w wyrażeniu regularnym okreÅ›liliÅ›my dokÅ‚adnie poczÄ…tek i koniec poszukiwanegociÄ…gu znaków za pomocÄ… znaków i.W ten sposób wykluczamy sytuacj¹, w której użyt-kownik poza adresem e-mail podaÅ‚ coÅ› jeszcze.Na przykÅ‚ad modyfikatory wychwycÄ… bÅ‚Ä…d mój e-mail to pswood@danube.com , w którym jakiÅ› dowcipniÅ› napisaÅ‚ caÅ‚e zdanie, a niewyÅ‚Ä…cznie adres e-mail.Po pierwszym wyst¹puje wzorzec.W ten sposób dopusz-czamy możliwość istnienia kolejnych grup znaków alfanumerycznych, o ile zostaÅ‚y poprze-dzone kreskÄ…, podkreÅ›leniem lub kropkÄ….Pytajnik po grupie ze znakami interpunkcyjnymioznacza, że podana grupa może (ale nie musi) wystÄ…pić.Po prostu pozwalamy na istnieje jed-nego z trzech podanych znaków interpunkcyjnych mi¹dzy znakami alfanumerycznymi w pierw-szej cz¹Å›ci adresu e-mail.Zauważ, że wyrażenie regularne zwróci wartość (faÅ‚sz), jeÅ›lijeden z tych znaków interpunkcyjnych znajdzie si¹ na poczÄ…tku lub na koÅ„cu pierwszej cz¹Å›ciadresu e-mail (przed znakiem @).Nast¹pnie wyst¹puje znak @ i powtórzenie caÅ‚ego wzorca sprzed znaku @.MógÅ‚byÅ› usunąćznak podkreÅ›lenia z tej cz¹Å›ci (z grupy ), ponieważ nazwy domen nie mogÄ… zawieraćtego znaku.Podany przykÅ‚ad nie oznacza, że j¹zyk PHP przydaje si¹ tylko do sprawdzania poprawnoÅ›ciwpisanego adresu e-mail.JeÅ›li jesteÅ› zainteresowany sprawdzaniem poprawnoÅ›ci caÅ‚ych for-mularzy, j¹zyk PHP zawiera wiele przydanych narz¹dzi; dost¹pne sÄ… nawet osobne moduÅ‚y.ChciaÅ‚em w tym przykÅ‚adzie pokazać, że do napisania caÅ‚kiem dobrego programu weryfikujÄ…-cego poprawność adresu e-mail w j¹zyku PHP wystarczy jedna linia.PodstawowÄ… sÅ‚aboÅ›ciÄ…podanego przykÅ‚adu jest to, że nie sprawdzamy, czy użytkownik w adresie e-mail podaÅ‚ do-men¹ z najwyższego poziomu (com, net, org, itp.)4.Niezle, jak na jednÄ… lini¹ kodu.4W dzisiejszych czasach sprawdzanie takich domen jest niezbyt bezpieczne, ponieważ możemyodrzucić prawidÅ‚owy adres e-mail, który nie należy do jednej z podanych przez nas grup domen przyp.tÅ‚um.130 Flash 5.Kompendium programistyJ¹zyk PHP obsÅ‚uguje także wzorce stosowane w j¹zyku Perl, które sÄ… bardzo podobne do tychz PHP, ale jako ograniczniki wyrażeÅ„ regularnych sÄ… stosowane ukoÅ›niki.AÄ…czÄ…c ten rodzajwyrażeÅ„ regularnych z omówionym przed chwilÄ…, możesz tworzyć jeszcze elastyczniejszewzorce, wykorzystujÄ…c granice słów, poczÄ…tki i koÅ„ce linii w plikach, itp.JeÅ›li chcesz w peÅ‚ni poznać możliwoÅ›ci drzemiÄ…ce w wyrażeniach regularnych, przeczytajksiążk¹ na temat j¹zyka Perl5.Wi¹kszość zagadnieÅ„ zwiÄ…zanych z wyrażeniami regularnymiopisywanych w takiej książce b¹dziesz mógÅ‚ wykorzystać nie tylko w j¹zyku Perl, ale takżew j¹zykach PHP i JavaScript.Plik mailingList.php z katalogu Rozdzial_5 na CD-ROM-ie.Istnieje naprawd¹ wiele zadaÅ„, które możesz wykonać, wykorzystujÄ…c niewielki plik tekstowyna serwerze.Na przykÅ‚ad możesz wykorzystać j¹zyk PHP do utworzenia niewielkich zródeÅ‚danych, skryptów dla innych programów (programu Swift Generator lub personalizacji usta-wieÅ„).IstniejÄ… jednak dwa poważne ograniczenia w stosowaniu tych plików.Najwi¹ksze ryzyko wiąże si¹ z wykorzystywaniem w j¹zyku PHP zapisu do pliku, ponieważmoże si¹ zdarzyć, że dwie osoby b¹dÄ… w tym samym czasie zapisywaÅ‚y dane do jednego pliku.Innymi sÅ‚owy, dwie osoby mogÄ… wysÅ‚ać formularz do tego samego skryptu dokÅ‚adnie w tejsamej chwili, co spowoduje, że w pliku znajdÄ… si¹ wymieszane dane z obydwu formularzy
[ Pobierz całość w formacie PDF ]