Shiphp The PHP Developer's Guide to Docker

Latest Blog Posts

Environmental Variables in PHP and Docker

Environmental Variables in PHP and Docker When running a PHP application, you almost always want to keep some environmentally dependent variables stored outside of your codebase. For example, it’s not a good idea to hard-code your database connection information because then you will have to remember to switch between local and production det... Read more

Interview with Mahmoud Zalt, Creator of Laradock

In the process of writing Building PHP Applications in Docker, I ran across a number of great tools and resources for PHP developers who want to get started using Docker. One tool that I’ve since started using for some of my side projects is Laradock, a docker-based development environment for PHP applications. Many PHP developers are used to v... Read more

Conditional Operators in PHP

Like any programming language, PHP supports conditional statements to execute specific blocks of code if a statement is true (or false) or some condition is met. If you’re familiar with conditional statements in other programming languages PHP should give you no trouble, but there are a couple lesser-known operators (ternary and null coalescin... Read more

Installing PHP Packages with Docker and Composer

Package management is a method for importing code (often from open source libraries) and keeping dependencies up to date in a software development project. In PHP, we have a couple ways to manage packages, but the dominant choice for modern PHP development is Composer. While you can install PHP and Composer on your local machine directly, in ... Read more

Introduction to Classes in PHP

Like most object-oriented programming languages, classes are the backbone of PHP projects. Classes allow you to group code into logical pieces, reuse code, and prevent misuse of functions and variables. This post will focus on the mechanics of classes and not the underlying concepts in object oriented software design. If you are interested in... Read more