πŸŽ“ Collection of useful PHP frequently asked questions, articles and best practices
Latest commit 5544115 Feb 20, 2017 @petk petk committed on GitHub Merge pull request #233 from Sibyx/master
phpGPX package
Permalink
Failed to load latest commit information.
api Api platform Oct 23, 2016
best-practices Recommend latest PHP 7.1 Dec 30, 2016
community
databases Add FAQ list and index with refactored categories Sep 28, 2016
frameworks
general
images/oop Refactor images Dec 8, 2016
interoperability
introduction Update PHP installation chapter Feb 9, 2017
oop
packages phpGPX package Feb 20, 2017
quality
security
CHANGELOG.md Add contributing information, initial repository code of conduct, cha… Oct 4, 2016
CONDUCT.md
CONTRIBUTING.md
LICENSE
README.md
faq.md Added "How to use Google Operators" Nov 20, 2016
index.md Add PHP Podcasts chapter Dec 4, 2016

README.md

πŸŽ“ PHP Resources

Join the chat at https://gitter.im/wwphp-fb/php-resources CC BY 4.0 License Repository size Project Maintained ghit.me

About

Over the years in the PHP community we have noticed that many users encounter similar issues and questions about PHP and web development throughout their PHP journey. This is a living repository that includes a collection of articles, best practices and frequently asked questions about PHP. This repository is also rendered on GitHub page.

How to Learn?

Learning is an important part of every developer to stay current. Each person has different preferences and approaches for learning. What is important that you keep learning through your entire career. Few suggestions you can implement in your learning habits: make dedicated time for learning, take small steps, study each topic in details. Even if it may seem that you will not need particular topic now, it might be useful later on in some project of yours. Learning has an advantage where you will be able to recall where to look further again in the future when you will need to solve particular development problem. Many developers also write blog posts or articles as they learn something new for multiple reasons: to share the knowledge with others and to strengthen their knowledge on particular topic as well (like taking notes when studying for exam).

The following pages will point out topics required for every PHP developer in particular on different skill levels. Most chapters also include further 3rd party links at the bottom in the See Also sections, to study particular topic in more details.

Index

  • Introduction to PHP 🌱

    Introduction chapter with basics to get up and running with PHP.

  • Object Oriented Programming πŸ“„

    Object oriented programming with PHP, design patterns and anti patterns.

  • Databases πŸ’Ώ

    Access to databases with PHP.

  • Security πŸ”’

    Web application and PHP security chapter.

  • PHP Frameworks πŸ”§

    Using a framework can help speeding up and improving the application. Which framework to learn and how to create your custom framework.

  • Code Quality and Testing πŸ’―

    How to testing and write quality PHP code.

  • Packages, Libraries and Managing Dependencies πŸ“¦

    PHP ecosystem of open source code from various resources.

  • API ☁️

    Application Programming Interface.

  • Interoperability πŸ”©

    To successfully work with PHP, there are many libraries and tools available. This chapter explains some of the recommended interoperability things required for building web applications with PHP.

  • PHP Community 🌍

    Awesome PHP community and PHP user groups.

  • General ❔

    All other PHP questions and tricks.

  • PHP Best Practices πŸ†

    A list of PHP best practices.

Roadmap

This is a repository in progress and is regularly updated. The following chapters and topics are also planned in the near future:

  • Object oriented programming improvements
  • Various more thorough security chapters
  • Performance of PHP applications
  • Docker for PHP developers
  • Redis
  • Testing improvements
  • Asynchronous programming in PHP
  • HTTP basics

Contributing and License

We are always looking forward to see your contribution to these knowledge resources as well.

If you feel that there is something missing and should be pointed out, or you've just found a typo, don't hesitate to open an issue or send a pull request. The CONTRIBUTING.md file contains more information about contributing.

This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license. Code snippets in examples are published under the CC0 1.0 Universal (CC0 1.0).

Big thanks to all the authors and contributors.