Professional PHP

Become a Pro!

Thanks to its huge community and plenty of example code and resources, there is a very low barrier to get started with PHP programming. This path however often does not immediately lead to a thorough understanding of the language and the best coding practices.

With this three-day course we aim to bring any beginning PHP developer up to a professional level, ready to work on real-world projects.


  • Target audience: beginning PHP developers
  • Prerequisites: already familiar with the basic PHP syntax


  • Cost: 950 € (incl 21% VAT)
  • Duration: 3 days
  • Location: King Foo offices, Aarschot (Belgium) or at your location starting from 5 participants
  • Max participants: 12

Our Terms and Conditions for Training apply.


A Run-through of the PHP Syntax (~1h)

In this module we will quickly run through PHP’s syntax, datatypes, operators and control structures, with a focus on some of the gotchas, common mistakes and best practices. We will also be looking into some of the changes with PHP 5.4.

OOP Concepts and Practice (~6h)

Over the years, PHP has evolved from a mostly procedural scripting language to a full-fledged object oriented programming language. We’ll have a in-depth look at and practice with Object Oriented Programming (OOP) in PHP.

At the end of this module you will master objects and classes, inheritance, member visibility, magic methods, interfaces, namespaces and the autoloading of classes.


The HTTP Protocol and PHP (~1.5h)

Even as web developers, we often take the HyperText Transfer Protocol (HTTP) too much for granted. We will look at how PHP handles a HTTP request and returns an appropriate HTTP response, and especially at how we can leverage the HTTP protocol in our code to build more advanced and even faster web applications.

Sessions (~1.5h)

Even though HTTP is a state-less protocol, PHP allows to persist data across subsequent requests. We will be looking into how these sessions work, what you can do with them and what you shouldn’t. We will also be looking in alternative session storage mechanisms and writing custom session handlers.

Database Access (~2h)

PHP offers different ways of accessing a wide range of databases. In this module we will show you how to use the MySQLi extension or PDO (PHP Data Objects) to connect to MySQL databases and query them with SQL.

Security (~2.5h)

The worst bugs are those which can be exploited by someone with malicious intentions. Unfortunately, these type of bugs are common for beginning PHP programmers.

In this module we will be explaining how hackers will try to exploit your code and more importantly, how you can protect yourself against them.


E-mail (~1.5h)

E-mail are still a predominant way of communicating on the internet. PHP makes it very easy to send very simple e-mails, but how can you send more complex mails with HTML content and additional attachments?

The Standard PHP Library (SPL) (~1.5h)

The SPL library offers us a variety of interfaces and classes which among other things, allow us to do more with our classes or address them in different ways. In this module we will be explaining how SPL can serve you, and offering some hands-on experience with some of it’s interfaces.

XML manipulation (~1.5h)

XML is an ubiquitous data format on the internet. It is used for configuration files to a way of communicating with webservices. We will be looking at different ways of parsing XML documents and manipulating them with PHP.

Sockets (~1.5h)

PHP offers a low-level API to create and manipulate socket communications. Through a practical exercise we will be showing how to use these sockets in a real-world scenario.

Debugging (~1.5h)

What do you do when you encounter a bug in your code? How do you identify the problem? What do you do when your site is broken and the only response you get is a completely blank page?

In this module we will be answering these questions, and looking into some tools which will help you debug your code.

Please register using this form:

Your Name (required)

Your Email (required)

Preferred dates (required)


Your Message