PHP

Still Use It?

PHP is best known as the language behind the popular WordPress CMS/framework. It runs the majority of the web but it also has developed a bad reputation.

See Brent’s article on why PHP shouldn’t still be considered a poor choice for modern development. For a modern PHP workflow see Felipe Lopes’ article on FreeCodeCamp.

General Resources

Web Frameworks

Package Management

  • Composer – 20.7k Stars – The main tool used to manage dependencies in PHP.
    • composer -v – Check that composer is working, see currently installed version.
    • composer list – See a list of the available commands for composer.
    • composer help command – Shows documentation related to the desired command.
    • composer init – Initializes composer for the given project.
    • composer require name/package – Adds to the composer.json and can install the specified package.
      • Use --dev before the name/package to indicate this dependency is only needed for development, not production.
    • composer show – List of currently required packages.
    • composer install – Uses an existing composer.json to install dependencies.
    • composer update – Updates dependencies to latest available.
  • Packagist – An online repository of packages for PHP, used in conjunction with Composer.

Async

Email

Other Packages/Frameworks

  • Twig – 6.3k Stars – Template Engine.
  • Guzzle – 17.5k Stars – PHP HTTP Client.
  • Grav – 11.2k Stars – Flat-file CMS.
  • Slim – 10.1k Stars – Micro Framework.
  • October – 8.9k Stars – CMS built on Laravel.

Static Code Analysis

Testing

Database

Other Tooling

  • PHP Documentor – 2.4k Stars
  • phpdotenv – 9.6k Stars – Allows environment variables to be loaded from .env to getenv().
  • Deployer – 7k Stars – Deployment Tool.
  • Behat – 3.1k Stars – BDD.
  • psr/log
  • monolog/monolog
  • webmozart/assert

Popular Software Written in PHP

Learning PHP