PHP – Advanced Programming Techniques (PHP2)

Programming, Web Programming

This course presents the PHP platform in full power, teaching how to design and organize large projects with clear OOP, proper code structure and design patterns. You will learn modern techniques for secure web applications with admin panels.

The course also covers working with images and databases, sending emails and creating PDFs, plus using web services for sending and receiving data. Practical tips on input validation, SQL and XSS protection are included.

THIS TRAINING COURSE WILL HELP YOU:

  • Design and organize large PHP projects using OOP principles
  • Apply common design patterns: MVC, Singleton, Factory, Adapter
  • Handle images, databases, emails and generate PDF documents
  • Use web services, validate input and protect against SQL/XSS attacks

WHO SHOULD ATTEND?

  • Intermediate PHP developers wanting advanced skills
  • Web developers building secure, modern web applications
  • Developers responsible for internal admin systems
  • Team leads aiming to improve code structure and testing

COURSE LOCATION AND AVAILABLE DATES



Public courses are usually delivered in Czech, but this course is also available in English. We can arrange private training for your team online, at your premises or in our classrooms, and tailor the content to your needs.

For groups of around 4 or more participants, private training can already be comparable in price to booking individual places on a public course. Send us your requirements and we’ll recommend the best format and provide an exact quote.

Request training in English

Course content:

Hide details
  • Introduction to OOP - basics and syntax
    1. Creating classes and properties; encapsulation - public, protected, private
    2. Creating and using fluent interfaces - method chaining
    3. Constants, static properties and methods; static usage patterns
    4. Magic methods: __construct, __destruct, autoload, __clone, isset/unset, __toString
    5. Magic accessors and invokers: __get, __set, __call, __callStatic
    6. Class inheritance: extends, implements, abstract and final
    7. Creating class patterns and using instanceof checks
    8. Namespaces: purpose, syntax and best practices
  • OOP - common PHP design patterns
    1. Avoiding spaghetti code with clear structure
    2. MVC (Model-View-Controller) - correct separation of responsibilities
    3. Adapter pattern - adapt an object to behave like another
    4. Singleton pattern - ensure a single unique instance
    5. Factory pattern - creating objects inside other classes
  • OOP - additional practical techniques
    1. Doc comments for automatic documentation and tooling
    2. Standard PHP Library (SPL) - core functions and interfaces
    3. ArrayObject and related structures
    4. Iterator interfaces - accessing objects like arrays
    5. Autoloading - project structure for autoloading and usage
  • Exceptions
    1. try, catch, throw constructs and handling flow
    2. Exception hierarchy and targeted catching
  • Regular expressions and security
    1. What regular expressions are and their uses
    2. Literals and special characters
    3. Modifiers and quantifiers
    4. Character classes and sets
    5. Using match and replace functions
    6. Sanitizing user input; preventing SQL injection and XSS
  • Testing
    1. Introduction to testing and reasons for automated tests
    2. Automated vs manual testing principles
    3. Unit testing vs integration testing
    4. Mocking techniques
    5. Using PHPUnit for practical tests
Prerequisites:
Basic PHP knowledge and abstract thinking; use Windows or Mac; familiarity with C‑family languages is advantageous.
Recommended previous course:
PHP – Introduction to Programming (PHP1)
Schedule:
2 days (9:00-17:00)
Price per person:
316.00 € ( 382.36 € incl. 21% VAT)

Training and learning environment