Kursplan
Introduksjon
Oppfriskning i grunnleggende PHP-programmering
Bruk av PHP-navnerom
- Oversikt over navnerom
- Definere navnerom
- Bruke navnerom
- Arbeide med Composer
- Føre navneløysningsregler for
Bruk av PHP-grensesnitt
- Opprette et grensesnitt
- Utvide et grensesnitt
- Arbeide med forhåndsdefinerte PHP-grensesnitt
Arbeide med PHP-egenskaper (traits)
- Føre PHP-egenskaper for
- Opprette en PHP-egenskap
Objektorientert programmering med avansert PHP
- Bruke PHP-magimetoder
- Bruke PHP-konstruktører
- Bruke PHP-dekonstruktører
- Bruke PHP-singletons
Implementere PHP-abstract klasser
- Oversikt over PHP-abstract klasser
- Opprette PHP-abstract klasser
Bruk av PHP-iterator
- Opprette en PHP-iterator
- Bruke stacked iterators (stacking iterators)
- Bruke SPL-iterators (SPL iterators)
Bruk av PHP-genereringsfunksjoner (generators)
- Oversikt over PHP-genereringsfunksjoner
- Opprette en PHP-genereringsfunksjon
Implementere PHP-passordhashing, passordverifisering og passordoppdatering
Arbeide med PHP-typehinser (type hints)
- Føre grunnleggende PHP-typehinser for
- Bruke PHP-strikte typedeklarasjoner (strict type declarations)
- Arbeide med PHP-returtyper (return types)
Arbeide med PHP-lukker (closures)
- Oversikt over PHP-lukker
- Opprette en PHP-lukk
- Bruke avanserte lukker
Bruk av PHP-undantak (exceptions)
- Føre PHP-undantak for
- Kaste et undantak (throw an exception)
- Implementere nestede undantak (nested exceptions)
- Implementere PHP-SPL-undantak (SPL exceptions)
- Utvide PHP-undantak
- Bruke finally-blokk
Felglesing og logging i PHP
Bruk av funksjoner i PHP
- Føre kodebruk (code reuse) for
- Føre funksjonforføring (function feeding) for
- Returnere data fra en funksjon
- Demo: Call-by-value vs. call-by-reference
Bruk av datourelaterte utvidelser i PHP
Bruk av PHP-regulære uttrykk (REGEX) funksjoner
Bruk av stremanipulasjonsfunksjoner
Kjøretidfeilhåndtering i PHP
Operasjoner på filer i PHP
Tilkobling til database-lagring i PHP
Implementere designmønstre (design patterns) i PHP
Implementere e-postfunksjonen i PHP
- Demo: Send og hent e-poster i PHP
- Demo: Bruke SMTP (Simple Mail Transfer Protocol) for å sende e-poster
Bruk av PEAR og cURL i PHP
- Demo: Bruke PHP-utvidelses- og applikasjonsarkiv (PEAR)
- Demo: Implementere grunnleggende cURL
- Demo: Webscraping ved hjelp av cURL
Arbeide med webtjenester i PHP
- Bruk av enkel objekttilgangsprotokoll (SOAP)
- Bruk av webtjenestebeskrivelsesspråk (WSDL)
Føre introspeksjon og refleksjon i PHP for
- Demo: Bruke Introspeksjons-API (Instrospection API)
- Demo: Bruke Refleksjons-API (Reflection API)
- Demo: Bruke Smarty-templates
Arbeide med PHP-sesjoner
- Føre sesjoner for
- Demo: PHP-sesjonmekanisme
Oversikt over PHP-rammeverk
- CakePHP
- Yii
- Zend
- CodeIgniter
Implementere beste praksis og sikkerhet i PHP
- Føre beste praksis for
- Demo: Bruke kryptering
Feltesetting (troubleshooting)
Sammandrag og konklusjon
Krav
- Grunnleggende PHP-programmeringserfaring
Målgruppe
- Webutviklere
- Vilkårlig person som ønsker å øke sin eksisterende PHP-kunnskap
Referanser (5)
I liked how Gunnar wrote pretty much all of the code on the fly as we were going through, but that there was plenty of pre-prepared material on the google drive that I can refer to after the training. The code Gunnar wrote based on the sample data I provided beforehand was also extremely useful and also made the training relevant to our own datasets.
Ranvir - Schroders Personal Wealth
Kurs - Visual Studio Code
Multiple examples for each module and great knowledge of the trainer.
Sebastian - BRD
Kurs - Secure Developer Java (Inc OWASP)
Module3 Applications Attacks and Exploits, XSS, SQL injection Module4 Servers Attacks and Exploits, DOS, BOF
Tshifhiwa - Vodacom
Kurs - How to Write Secure Code
Real-life examples.
Kristoffer Opdahl - Buypass AS
Kurs - Web Security with the OWASP Testing Framework
The trainer's subject knowledge was excellent, and the way the sessions were set out so that the audience could follow along with the demonstrations really helped to cement that knowledge, compared to just sitting and listening.