LINUXSOFT.cz Přeskoč levou lištu
Uživatel: Heslo:  
   CZUKPL

> PHP (23) - Neztraťte se ve funkcích

Funkcí v PHP je nepřeberné množství. Dnes si letmo shrneme, co všechno tento jazyk vlastně umí a co z toho se vyplatí vědět z hlavy.

12.7.2004 15:00 | Petr Zajíc | Články autora | přečteno 42697×

Komerční sdělení: Pořádáme Kurzy PHP

PHP je jazyk vybavený mnoha funkcemi. Když se s ním setkal poprvé, trochu mě to odradilo. Dnešní díl seriálu má za cíl čtenáře uklidnit. Není totož nutné všechno si pamatovat, ale je dobré alespoň vědět, že nějaké možnosti existují. I profesionál pracující s PHP běžně využívá jen asi 10% existujících prvků tohoto mocného programovacího nástroje.

Základní okruhy funkcí

Již jsme se podívali na převážnou většinu toho, co budete při práci s PHP potřebovat neustále. Jsou to základní příkazy a funkce. Čistě pro osvěžení - byla řeč o následujících prvcích PHP: Echo, operátory, výrazy, pole, příkazy pro řízení toku a některé příkazy pro formátování data a času. Shrňme si teď určité okruhy funkcí v PHP, které se vyplatí při vážné práci znát, nejlépe z hlavy. To samozřejmě neznamená, že se je musíte hned naučit. Spíš jsou to věci, které pravděpodobně budete potřebovat opakovaně.

Funkce pro práci z řetězci
Ty budete v PHP potřebovat neustále. Ořezání, nahrazení řetězce, vyjmutí jeho části anebo formátování jsou dobrý příklad. Tyto funkce budete muset znát téměř jistě, protože prohlížeči se nakonec ke zobrazení posílají stejně řetězce.

Odesílání e-mailů
PHP umí odeslat e-mail. To je funkce, kterou velmi oceníte a jistě využijete při tvorbě vlastních stránek. Pomocí rozšiřujících knihoven dokonce PHP umí posílat i zprávy s přílohami a tak dále.

Funkce pro práci se soubory
Umět soubory vytvořit, odstarit, zapsat do nich, nahrát je na server nebo smazat se vždycky hodí. Tomuto tématu se v našem seriálu budeme zanedlouho podrobně věnovat, takže se máte na co těšit.

Funkce pro práci s databázemi
PHP podporuje spolupráci s mnoha databázemi. Tomu se při vážné práci nevyhneme. A nevyhneme se tomu ani v našem seriálu. Téma databází je velice rozsáhlé a bude to na několik dílů.

Co si pamatovat nemusíte

Pokud nemáte fenomenální paměť nebo pokud ji máte, ale nechcete se zatěžovat zbytčnostmi, můžete na zbytek funkcí PHP s klidným svědomím zapomenout. Existují úzce specializované skupiny úloh, na které PHP má celé sady funkcí, ale které se nepoužívají tak často. Patří mezi ně funkce pro komprimaci a dekomprimaci, funkce pro práci s přesnou matematikou, funkce pro práci se specifickými protokoly (třeba LDAP), funkce pro přenosy souborů pomocí FTP, funkce pro kreslení obrázků, šifrovací funkce, funkce specifické pro práci s nějakým serverem (hlavně Apache), funkce specifické pro práci s nějakým operačním systémem (dokonce i Windows) a mnoho dalších.

Pamatujte si, že tolik funkcí zde není proto, aby to uživatele děsilo, ale proto, aby mu to ulehčilo život. Budete-li programovat něco speciálního (třeba tvorbu PDF pomocí PHP), pravděpodobně se související funkce budete chtít naučit. Pokud ale budete dělat běžné webové aplikace, vystačíte s minimem.

Manuál

Pro věci, které si pamatovat nemusíte je tu PHP manuál. Narozdíl od mnoha manuálů, které jsem viděl je tenhle docela užitečný, protože obsahuje kromě věcí jako jsou popisy funkcí a příklady použití také komentáře jednotlivých uživatelů. Manuál najdete na adrese http://cz.php.net/manual/cs. Je to rádoby česká, částečně přeložená verze. Uživatelské komentáře bývají většinou v angličtině, ale často obsahují příklady a pochopíte je i tehdy, pokud v angličtině nejste moc zběhlí.

Jednotlivé funkce mají logicky pojmenované související stránky v doumentaci. Například funkce date má stránku http://cz.php.net/manual/cs/function.date.php, funkce print stránku http://cz.php.net/manual/cs/function.print.php a tak dále.

Manuál není k dispozici pouze on-line, ačkoli je to asi to nejlepší. Pokud chcete nebo musíte vyvíjet PHP bez možnosti připojení k internetu (brr), můžete si manuál stáhnout ve formě souborů html (pokud byste chtěli mermomocí něco pod Windows, tak se dá pořídit manuál i jako soubor chm, tedy Windows help).

Praxe

Až na malé výjimky se vyplatí používat nejnovější verzi PHP, protože někreré funkce bývají do nových verzí přidány nebo tam jsou rozšířeny. Anebo taky opraveny, pokud se dříve chovaly špatně. Když ale vyvíjíte komerční aplikaci, pamatujte, že byste se měli spoléhat jen na funkce podporované ve verzi PHP běžící na serveru, na němž bude aplikace umístěna. Často bývá nemožné nebo náročné přimět správce vzdáleného systému k tomu, aby upgradoval PHP, zejména když jediným důvodem upgrade je kód spoléhající na nejnovější verzi jazyka.

I když si myslíte, že pro činnost, kterou chcete dělat znáte odpovídající funkci nebo funkce, vyplatí se podívat se do dokumentace, zda se to nedá provést nějakým kratším způsobem. Například jsem kdysi dávno potřeboval funkci, která by odstranila diakritiku z textu, abych jej mohl odeslat jako zprávu na mobilní telefon. Nejprve mě napadlo použití konstrukce case, ale bylo by to moc dlouhé. Potom jsemu zvažoval použití funkce str_replace, která v řetězci nahrazuje některou jeho část jiným řetězcem. To už by mohlo být trochu kratší. A pak jsem se dozvěděl o funkci StrTr. Výsledek byl zhruba následující:

<?
  
function BezDK($text)
  {
    return
StrTr($text,"áčďěéëíľĺňóöřšťůúüýž","acdeeeillnoorstuuuyz");
  }
  echo
BezDK ("žluťoučký kůň pěl ďábelské ódy");
?>

Pěkné, že? (Pokud máte někdo kratší řešení, můžete přispět do diskuse).

Co bude teď v seriálu

Náš seriál se nyní přehoupne z naprostého úvodu k pokročilejším tématům. Budeme několik dílů věnovat postupně třem okruhům: Zpracování formulářů, práci se soubory a práci s databázemi. Každé z témat zakončíme nějakým použitelným příkladem, takže se máte na co těšit. Zčásti tato témata kopírují ty věci, o kterých jsem prohlásil, že stojí za to se je naučit; takže v závěru seriálu byste měli mít znalosti na sestavení středně rozsáhlého webu.

Mimochodem, vymýšlení dostatečně jednoduchých a přitom popisných příkladů není žádná hračka - takže pokud máte nějaký nápad co bychom mohli ukázat jako příklad, můžete se realizovat v diskusi pod tímto článkem.

Verze pro tisk

pridej.cz

 

DISKUZE

odkaz na http://cz.php.net/ 29.10.2009 18:46 Ján'Smethak'Miháľ




Příspívat do diskuze mohou pouze registrovaní uživatelé.
> Vyhledávání software
> Vyhledávání článků

21.11.2014 7:41 /MaReK Olšavský
Američtí uživatelé již to zjistili, když byl ve Firefoxu defaultní vyhledávač přenastaven na Yahoo, ale Google již není jediným partnerem pro vyhledávání (a financování).
Přidat komentář

20.11.2014 7:36 /MaReK Olšavský
Libby Clark sepsala, pro Linux Foundation, příběh zapojení SanDisku do vývoje F/L/OSS. SanDisk se postupně stal 7. největším přispěvatelem do vývoje Cephu.
Přidat komentář

20.11.2014 7:36 /MaReK Olšavský
Zajímá-li vás astronomie a jste nakloněni GNU/Linuxu, jinak byste asi nenavštívili náš web, měli byste si vyzkoušet čerstvé vydání Astro Linuxu (verze 3.0). Výběr software, pro distribuci založenou na Debianu, je přizpůsoben právě astronomům.
Přidat komentář

20.11.2014 7:36 /MaReK Olšavský
Vývojáři odešlí z Nokie po ukončení snah o linuxová zařízení vytvořili společnost Jolla Ltd, která vypustila do světa první mobilní telefon a teď asi přepsala rekordy crowdfundingu kampaní na výrobu tabletu se Sailfish OS, která během 3 hodin vybrala potřebnou částku.
Přidat komentář

19.11.2014 7:20 /MaReK Olšavský
WhatsApp, potažmo současný majitel Facebook, daroval US$ 1 mil do FreeBSD Foundation. Jedná se o historicky nejvyšší jednorázovou částku pro FreeBSD a nejspíše i pro svobodný software.
Přidat komentář

19.11.2014 7:20 /MaReK Olšavský
Bezplatná verze „úvodu do GNU/Linuxu“, kterou spustila Linux Foundation na stránkách edX má úspěch, zatím jím prošlo 300 000 účastníků.
Přidat komentář

19.11.2014 7:20 /MaReK Olšavský
Finské Nokii asi nikdo nemůže rozumět. Nedlouho po prodeji mobilní divize Microsoftu představila tablet N1 s Android 5.0. Chystá Nokia vlastní restart ve vývoji mobilních telefonů, teď již s majoritním mobilním OS?
Přidat komentář

18.11.2014 7:11 /MaReK Olšavský
V pátek 14. listopadu 2014 vyšlo FreeBSD 10.1, rychle následované „desktopovou verzí“ PC-BSD 10.1 a serverovým TrueOS 10.1 (viz info na PC-BSD). FreeBSD dostalo do vínku podporu UEFI, nebo možnost bootu ze ZFS.
Přidat komentář

   Více ...   Přidat zprávičku

> Poslední diskuze

11.11.2014 14:24 / Libor Suchý
Nekonečný while cyklus

10.11.2014 19:09 / Libor Suchý
Re: tabulka - bitovy sucet

10.11.2014 19:03 / Libor Suchý
Re: tabulka - bitovy sucet

24.10.2014 17:47 / Petr Ježek
Andreas

16.10.2014 7:56 / Leo
Sanba

Více ...

ISSN 1801-3805 | Provozovatel: Pavel Kysilka, IČ: 72868490 (2003-2014) | mail at linuxsoft dot cz | Design: www.megadesign.cz | Textová verze | zákony online