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 41976×

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ů

30.7.2014 7:18 /MaReK Olšavský
O roli svobodného software ve vzdělávání se začalo mluvit především v souvislosti s nástupem online školení/kurzů. F/L/OSS jako klíčovou součást vzdělávání vyzdvihujá i Anant Agarwal, CEO EDx.
Přidat komentář

30.7.2014 7:18 /MaReK Olšavský
Do Debianu 8 by se nejspíše mohl vrátit FFmpeg. „Válka“ FFmpeg vs. Libav tak bude pokračovat i na „území Debianu“.
Přidat komentář

30.7.2014 7:18 /MaReK Olšavský
VLC je mocný nástroj pro práci s A/V daty, ale většina uživatelů používá pouze přehrávač. Sílu VLC, ve spojení s dalšími svobodnými nástroji, poodkrývá článek Sama Deana, doplněný odkazy na podrobnosti o jednotlivých nástrojích.
Přidat komentář

28.7.2014 7:06 /MaReK Olšavský
Dalším úspěšným příkladem nemalé finanční úspory díky F/L/OSS se stalo francouzské město Toulouse, jež má ušetřeno 1 mil. € po přechodu na LibreOffice. Změnili jen kancelářský balík, příklad Mnichova, kompletní přechod na F/L/OSS, by určitě znamenal vyšší úsporu.
Přidat komentář

28.7.2014 7:06 /MaReK Olšavský
Těžba bitcoinů s Raspberry Pi zní jako nesmysl, ale článek na webu Linux User ukazuje, že to jde. Velké množství vytěžených bitcoinů však nečekejte, vzhledem k výkonu RPi.
Přidat komentář

28.7.2014 7:06 /MaReK Olšavský
Vyšlo 87. číslo měsíčníku Full Circle Magazine (pdf, ePub) určeného nejen uživatelům Ubuntu. Vedle pravidelných seriálů je hlavním tématem náhrada Truecryptu.
Přidat komentář

25.7.2014 7:17 /MaReK Olšavský
Miguel de Icaza rozšiřuje tým vyvíjejíci Mono a hodlají se na výkon Mono, svobodné implementace .NETu. Mono není jen pro GNU/Linux, ale i pro Android, nebo iOS.
Přidat komentář

25.7.2014 7:17 /MaReK Olšavský
Firma PredictionIO, jež připravuje software pro výuku, získala investici US$ 2.5 mil. do vývoje. Na jejich platformě údajně pracuje 4 000 vývojářů.
Přidat komentář

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

> Poslední diskuze

27.7.2014 17:55 / Jabu
Re: instalace modemu Huawei E352 v Ubuntu 14.04

25.7.2014 7:06 / MaReK Olšavský
Re: ksplice

24.7.2014 8:06 / Stanislav David
ksplice

15.7.2014 6:16 / MaReK Olšavský
2017

25.6.2014 19:04 / Petr Ježek
více argumentů

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