Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

The PHP developer's reading path

Every page of the PHP developers section in a recommended reading order, in six stages from orientation to contributing, with the time each stage takes and what you can do after it.

Download as PDF

Address: https://doc.exponential.earth/learninminutes/exphelp/viewer/help/php-developers/php-developer-reading-path.md

On this page

The PHP developer's reading path

This page is for PHP developers who want to read this section in a sensible order. It has six stages. After each stage you can do something you could not do before. The times are rough reading times, without the exercises.

Contents

  1. Stage 1: orientation (1 hour)
  2. Stage 2: the rules of the code (2 hours)
  3. Stage 3: building blocks (half a day)
  4. Stage 4: data and APIs (half a day)
  5. Stage 5: security, debugging and performance (half a day)
  6. Stage 6: runtimes, tests and contributing (half a day)
  7. Reference while you work

Stage 1: orientation (1 hour)

  1. PHP Developers: start here
  2. Exponential for PHP developers
  3. A tour of the source tree
  4. How a request runs in PHP
  5. Setting up a PHP development checkout

After it: you have a working checkout and know where code runs.

Stage 2: the rules of the code (2 hours)

  1. Supported PHP versions: 8.0 to 8.5
  2. Writing code that runs on PHP 8.0
  3. PHP 8 migration notes for your code
  4. The coding standard (phpcs.xml.dist)
  5. Why the code has no type declarations
  6. Class naming and the exp prefix
  7. Autoloads and class maps
  8. Reading settings with eZINI

After it: your code passes the checks and fits the code base.

Stage 3: building blocks (half a day)

  1. Write your first module view (do it)
  2. Module views as classes
  3. Write a console command
  4. Write a cronjob part
  5. Plain CLI scripts with eZScript and ezexec
  6. Write a fetch function
  7. Write a template operator in PHP
  8. Write a datatype
  9. Write a workflow event type
  10. Events, listeners and filters
  11. Extension points from PHP

After it: you can add screens, commands, scheduled work, template helpers, field types and workflow steps.

Stage 4: data and APIs (half a day)

  1. SQL with eZDB, safely
  2. Code for every supported database
  3. Persistent object definitions in depth
  4. ezjscore JSON endpoints in PHP
  5. REST and remote services from PHP
  6. Composer for PHP developers

After it: you store data portably and serve it over HTTP.

Stage 5: security, debugging and performance (half a day)

  1. Security in PHP code
  2. Validating input and casting
  3. Escaping output from PHP
  4. CSRF protection and ezformtoken
  5. Debugging with eZDebug
  6. The debug bar for PHP developers
  7. Logs, the log viewer and request logs
  8. Profiling PHP code

After it: your code is safe, and you can find and measure what goes wrong.

Stage 6: runtimes, tests and contributing (half a day)

  1. Velocity persistent workers for PHP developers
  2. Static state traps
  3. FrankenPHP for PHP developers
  4. The engine archive (phar) for PHP developers
  5. OPcache and cache preloading
  6. PHPUnit without a database
  7. Database and live tests
  8. Static analysis with PHPStan
  9. Git hooks and make targets
  10. CI and reproducing a red check
  11. Contributing PHP changes

After it: your code runs under every engine, is tested, and can go into the kernel.

Reference while you work

Become an Exponential Partner

Partners share their information, provide funding, contribute back and develop the products with us, and that is how Exponential grows. A partner website and dashboard are planned for mid-2027: please become a partner today to speed up our growth rate and land new features faster.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x