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

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.1.2015 7:19 /MaReK Olšavský
PgSQL je ortodoxní databáze, implementace SQL se striktně řídí standardy, ale vývojáři se nebrání ani novým přístupům. Přísně relační databázi je možné využít i jako NoSQL úložiště.
Přidat komentář

30.1.2015 7:19 /MaReK Olšavský
The Document Foundation vydala LibreOffice 4.4. Vývojáři zapracovali na GUI, zlepšili kompatibilitu s OOXML a vylepšeními prošla i kvalita kódu.
Přidat komentář

30.1.2015 7:19 /MaReK Olšavský
Největší využití technologie Adobe Flash bylo, velmi pravděpodobně, na službě YouTube. Po přechodu na HTML5 se už regulerně objevují hlasy vysvětlující co bylo na Flashi špatně a proč neuspěl. Pamatujete doby, kdy jsme používali i jeden Firefox ve Wine, jen proto, aby šel Flash?
Přidat komentář

29.1.2015 7:31 /MaReK Olšavský
„Nevěřím žádné statistice, kterou jsem sám nezfalšoval“ - Joseph Goebbels. V diskuzích kolem likvidace internetové anonymity (Tor) používalo americké ministerstvo spravedlnosti i nereálná čísla o 80 % podílu dětské pornografie na provozu.
Komentářů: 1

29.1.2015 7:31 /MaReK Olšavský
Dost zajímavý; a pro leckoho nestravitelný článek; napsala Vita Loginova. Vysvětluje multiasking v jádře GNU/Linuxu. BTW: Pokud se chcete procvičit v ruštině - originál.
Přidat komentář

29.1.2015 7:31 /MaReK Olšavský
Výkon Raspberry-Pi „nutí“ programátora myslet při ladění programu na optimalizaci. Na stránkách časopisu Linux User je článek věnovaný cProfile (kterýžto profiler není výsadou R-Pi).
Přidat komentář

28.1.2015 12:29 /Ondřej Čečák
Svým hlasováním můžete ovlivnit program konference InstallFest 2015. Hlasujte do 30. 1.
Přidat komentář

28.1.2015 7:18 /MaReK Olšavský
Chyba GHOST, v glibc, existovala od listopadu 2000. Nyní je opravena a Qualis vydal podrobnější informace o rizicích.
Přidat komentář

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

> Poslední diskuze

30.1.2015 13:16 / Petr Ježek
Churchill

27.1.2015 12:58 / Ladislav Kulatý
Re: Mazání adřářů v linuxu pro IP kamery

26.1.2015 23:57 / Sinuhed
Re: Mazání adřářů v linuxu pro IP kamery

26.1.2015 11:05 / Sinuhed
Re: Mazání adřářů v linuxu pro IP kamery

26.1.2015 8:33 / Ladislav Kulatý
Re: Mazání adřářů v linuxu pro IP kamery

Více ...

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