Student se seznámí s principy dynamické tvorby webových stránek na straně servera. Naučí se programovací jazyk PHP. V této části jsou vyloženy základní konstrukce jazyka - typy a definice proměnných, operátory, pole, cykly, definice a volání funkcí. Současně se ukazuje, jak se vloží PHP skript do HTML kódu vytvářené stránky. Posluchač se dozví i základní informace o práci se stringy a regulárními výrazy. Vykládá se i práce s formuláři - uživatelský vstup dat, jeho ošetření a zpracování. Důležitou oblastí je i používání stavu session. Další částí je implementace objektového programování v PHP - definice a instancování tříd, konstruktory, metody, vlastnosti, statické členy, destruktory. Dále se posluchači seznámí s dědičností a polymorfizmem v PHP. Posluchač se se též naučí pracovat s databázemi v prostředí PHP a vyzkouší praktické použití databází MySQL nebo SQLite. Je ukázáno použití Quick Forms (objektové vytváření web formulářů). Jsou vyloženy i základy zabezpečení aplikace. Nakonec se vykládají principy architektury MVC a je vytvořena jednoduchá aplikace s použitím MVC frameworku.
Poslední úprava: Kubová Petra Ing. (02.01.2018)
The goal of the course is to acquaint students with the principles of dynamically generated server-side web pages. PHP programming language (types and definitions of variables, operators, arrays, loops, definitions and calls of functions, strings, regular expressions) and PHP code embedding into the HTML page are discussed. Students gain an insight into implementation of object oriented programming in PHP, inheritance and polymorphism in PHP, databases in the PHP environment, practical use of MySQL / SQLLite database system, and selected parts of PHP libraries.
Výstupy studia předmětu -
Poslední úprava: Kubová Petra Ing. (02.01.2018)
Studenti budou umět:
Rozumět principům dynamické tvorby webových stránek na straně serveru.
Programovat v jazyce PHP: základní konstrukce jazyka - typy a definice proměnných, operátory, pole, cykly, definice a volání funkcí, vkládání PHP skriptu do HTML kódu vytvářené stránky.
Pracovat se stringy a regulárními výrazy, s formuláři - uživatelský vstup dat, jeho ošetření a zpracování, se stavem session.
Objektové programování v PHP - definice a instancování tříd, konstruktory, metody, vlastnosti, statické členy, destruktory, dědičnost a polymorfizmus v PHP.
Pracovat s databázemi v prostředí PHP, včetně praktického použití databází MySQL nebo SQLite.
Rozumět použití Quick Forms (objektové vytváření web formulářů), základům zabezpečení aplikace, principům architektury MVC.
Vytvořit jednoduchou aplikaci s použitím MVC frameworku.
Poslední úprava: Kubová Petra Ing. (02.01.2018)
Students will be able to:
Understand the principles of dynamically generated server-side web pages, PHP programming language (types and definitions of variables, operators, arrays, loops, definitions and calls of functions, strings, regular expressions) and PHP code embedding into the HTML page.
Have an insight into implementation of object oriented programming in PHP, inheritance and polymorphism in PHP, databases in the PHP environment, practical use of MySQL / SQLite database system, and selected parts of PHP libraries, Quick Forms, MVC architectural principles and MVC Framework.
Literatura -
Poslední úprava: Kubová Petra Ing. (02.01.2018)
Materiály jsou k dispozici na serveru EDUX.
Poslední úprava: Kubová Petra Ing. (02.01.2018)
Study materials are available on EDUX server.
Studijní opory -
Poslední úprava: Kubová Petra Ing. (02.01.2018)
https://edux.fit.cvut.cz/courses/BI-PHP
(nutné přihlášení)
Poslední úprava: Kubová Petra Ing. (02.01.2018)
https://edux.fit.cvut.cz/courses/BI-PHP
(login necessary)
Sylabus -
Poslední úprava: Svozil Daniel prof. Mgr. Ph.D. (26.03.2019)
1. Základní syntaxe a datové typy (vyjma objektů)
2. Vývojové prostředí, debugování, pracovní workflow
3. Proměnné a konstanty, výrazy a řídicí struktury
4. Funkce, Built-in funkce (řětězce, reg výrazy)
5. Built-in funkce (datové typy, I/O)
6. Základy OOP (třída, rozhraní, viditelnost, načítání tříd)
7. Používání OOP - dědičnost, traits, type hinting, late static binding, porovnávání objektů, serializace objektů
8. Jmenné prostory
9. Výjimky a chyby
10. Jednotkové a integrační testy - PHPUnit
11. Závislosti projektu, automatické načítání tříd, Composer; Profilování kódu aplikace
12. PHP7 nové vlastnosti a možnosti
13. React framework
Poslední úprava: Svozil Daniel prof. Mgr. Ph.D. (26.03.2019)
1. Basic syntax, data types (except OOP)
2. Using IDE, debugging, workflow
3. Variables, constants, expressions and control structures
5. Built-in functions (working with data types, I/O)
6. Basics of OOP (class, interface, visibility, class loading)
7. Using OOP (inheritance, traits, type hinting, late static binding, comparison of object, de/serialization)
8. Namespaces
9. Error handling - errors and exceptions
10. Unit tests, integration tests (PHPUnit)
11. Project dependencies, automatic class loading, Composer; Code profiling
12. PHP7 new options
13. React framework
Studijní prerekvizity -
Poslední úprava: Kubová Petra Ing. (02.01.2018)
Předpokládá se schopnost algoritmizace a alespoň základní praxe s programováním. Vhodná (i když ne nezbytná) je i určitá znalost HTML. Samozřejmě se předpokláda i schopnost zacházet s počítačem alespoň na uživatelské úrovni a uživatelská práce s webem. Výhodou (i když nikoli nezbytným předpokladem) je znalost principů objektového programování. Též vhodné (nikoli nezbytné) je mít alespoň základní zkušenost s prací s databázemi. Podrobné požadavky jsou uvedeny na stránce: https://edux.fit.cvut.cz/courses/BI-PHP.1
Poslední úprava: Kubová Petra Ing. (02.01.2018)
Algorithmization and essential knowledge of the programs development are assumed. Knowledge of HLML, fundamentals in the object oriented programming, and the experience in the database management are advantages, but not necessity.
Podmínky zakončení předmětu (Další požadavky na studenta)
Poslední úprava: Svozil Daniel prof. Mgr. Ph.D. (07.02.2018)
Pro zı́skánı́ klasifikovaného zápočtu je potřeba dostatek bodů z písemných testů.
Zátěž studenta
Činnost
Kredity
Hodiny
Příprava na přednášky, semináře, laboratoře, exkurzi nebo praxi