Learn modern PHP

A curated list of resources for PHP

Table of Contents

Must read

Tutorials

Videos

Books

Online schools

Reference

LAMP: Linux, Apache, MySql, PHP

The LAMP stack:

HTML / HTML 5

CSS

JavaScript

Protocols

Tools

IDEs

Graphic tools

Frontend

Webdesign

View libraries (frontend)

Templating

Frameworks

Micro Frameworks

Libraries

Model-View-Controller

Most frameworks in PHP follow some sort of MVC structure. The theory is simple:

The user interfaces with the view, which passes information to a controller. The controller then passes that information to a model (layer), and the model passes information back to the controller. The controller effectively stands between the view and the model. (Brandon James Savage)

Object-oriented programming

“Write shy code -
modules that don’t reveal anything unnecessary to other
modules and that don’t rely on other modules’ implementations.”

Design patterns

Best Practices

KISS

Simplicity is prerequisite for reliability.
— Edsger W. Dijkstra

YAGNI

DRY

“DRY ‐ Don’t Repeat Yourself
Every piece of knowledge must have a single,
unambiguous, athoritative representation within a system.”

SOLID

Other

Database basics

Relational database management system (RDBMS)

Database books

Database normalization

Bad programmers worry about the code. Good programmers worry about data structures and their relationships.

Prepared Statements

Database libraries

Database tools

NoSQL

Standards

Follow common PHP conventions for object-oriented code, and established industry best practices: PSR-1, PSR-2, PSR-4.

Errors and exception handling

Debugging

Unit testing

“Software testers do not make software; they only make them better.” – Anonymous

Documentation

PHPdoc is intended for documenting your code. The intention is that you always add comments to your parameters and return types in docblocks that describe what they do. There is software that can read in your code and produce documentation in pdf or HTML format that describes all your classes and functions as well as what they do and how to use them. It is a system for inline documentation as the name indicates.

PHP Sessions

Text translations

Dependency injection

Regular Expressions

XML

API

RESTful API

SOAP API

Version control

Security

A good programmer looks both ways before crossing a one-way street.

Architecture

Domain Driven Design (DDD)

Continuous integration (CI) and Continuous Delivery (CD)

Magazines

Community / News