Warning
This page is located in archive. Go to the latest version of this course pages. Go the latest version of this page.

Jazyk PHP, test

Informace o testu:

Test bude písemný, bez použití jiných pomůcek než tužky, papíru a vlastní hlavy. Okruh znalostí je dán dosud probranou látkou, tj. zaměříme se na klientskou stranu webové aplikace.

Časová náročnost testu: 20 minut.

Cvičící může rozhodnout o posunu testu o jeden týden podle aktuální situace.

1 - Výpis aktuálního data

  1. Založte si nový soubor datum.php.
  2. Vytvořte validní XHTML obsah tohoto souboru s textem: Dnešní datum je: XXXX
  3. Na pozici XXXX doplňte PHP skript, který vypíše aktuální datum.

/

Nápověda - použijte on-line manuál PHP na adrese www.php.cz, funkce date.

2 - Práce s datem

Rozšiřte předchozí příklad tak, že definujete proměnnou $datum, do které přiřadíte řetězec ve tvaru den.mesic.rok (např. 12.6.2008). Předpokládejme, že oddělovačem je znak “.”

  1. naplňte proměnné $den, $mesic, $rok odpovídajícími hodnotami z řetězce
  2. vytvořte novou proměnnou $timestamp, která bude obsahovat unix timestamp odpovídající danému datu
  3. do XHTML vypište datum určené pomocí unix timestamp ve formátu : den. mesic. rok je den_v_tydnu (např. 12.6.2008 je čtvrtek)

Nápověda - Prostudujte možnosti funkcí explode(), mktime() a date().

3 - Funkce

  1. PHP kód z předchozího příkladu převeďte na funkci, která bude mít jako parametr řetězec reprezentující datum a vracet řetězec s datem a dnem v týdnu

4 - Průchod pole

Předpokládejte, že máte v poli uložena data jako řetězce stejně jako v příkladu 2 výše.

  1. Postupně procházejte toto pole a pro každou jeho položku na samostatný řádek vypište
    1. číslo řádku, číslování začíná od 1,
    2. datum a den v týdnu

Nápověda - konstrukt foreach.

5 - Vytváření pole

  1. Napište funkci, která vrátí pole všech čísel měsíců z pole dat z předchozího příkladu.

6 - Různé měsíce

  1. Upravte funkci z předchozího příkladu tak, aby do výsledného pole ukládala pouze všechna různá čísla měsíců.

7 - Zjištění typu proměnné

Mějme proměnnou $cislo, která obsahuje libovolný textový řetězec.

  1. Napište funkci, která zjistí, zda tento řetězec je kladné celé číslo. Pokud ano, vrátí hodnotu true, jinak false.

8 - Nepovinné paramery funkcí

  1. Modifikujte funkci z předchozího příkladu tak, že bude mít navíc nepovinný parametr $min.
  2. V případě, že parametr $min bude zadán a bude číslo, funkce vrátí true v případě že testovaná hodnota je kladné celé číslo větší nebo rovno $min.
  3. V ostatních případech se chování funkce nezmění.
  4. Funkci dále rozšiřte o nepovinný parametr $max, který pokud bude zadán, bude číslo a bude větší než $min, pak funkce bude vracet true pouze v pokud budou splněny všechny předchozí podmínky a navíc bude testovaná hodnota menší nebo rovna $max.

Domácí úkol

V proměnné $mesic mějme číslo měsíce od 1 do 12 a v proměnné $rok číslo od 1970 do 2050. Napište funkci, která vypíše kalendář tohoto měsíce v následujícím tvaru:

- pozor v kalendáři je chyba. Poslední týden se nemá zobrazit, protože patří do dalšího měsíce. Váš domácí úkol to bude zobrazovat správně.

V kalendáři zobrazte odlišnou barvou i přiměřený počet dnů minulého a následujícího měsíce.

Odkazy

courses/b6b39zwa/tutorials/06/start.txt · Last modified: 2018/10/01 15:02 (external edit)