Skip to content

Latest commit

 

History

History
176 lines (151 loc) · 11.3 KB

File metadata and controls

176 lines (151 loc) · 11.3 KB
title PHP Knowledge Resources
permalink /learn/
redirect_from
/articles/

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.

Introduction to PHP

  • [What is PHP? Where Should I Start?]({% link _resources/introduction/what-is-php.md %})
  • [PHP Evolution]({% link _resources/introduction/evolution.md %})
  • [PHP Installation]({% link _resources/introduction/installation.md %})
  • [Why Choosing PHP?]({% link _resources/introduction/why-php.md %})
  • [Which Books are recommended for Learning PHP?]({% link _resources/introduction/books.md %})
  • [Which hosting service should I use for PHP, are there any free hosting providers?]({% link _resources/introduction/hosting.md %})
  • [PHP Basics]({% link _resources/introduction/basics.md %})
  • [PHP 7]({% link _resources/introduction/php7.md %})
  • [PHP Versions Usage]({% link _resources/introduction/versions.md %})
  • [Why is PHP Using Dollar Sign $ to Prefix Variables?]({% link _resources/introduction/dollar-sign.md %})

Object Oriented Programming

  • [What is object oriented programming (OOP)?]({% link _resources/oop/intro.md %})
  • [Abstract Classes in PHP]({% link _resources/oop/abstract-classes.md %})
  • [What are Iterators in PHP and How to Use Them?]({% link _resources/oop/iterators.md %})
  • [What is Dependency Injection Container in PHP?]({% link _resources/oop/dic.md %})
  • [What are design patterns in PHP?]({% link _resources/oop/design-patterns.md %})
    • [Abstract Factory]({% link _resources/oop/design-patterns/abstract-factory.md %})
    • [Adapter]({% link _resources/oop/design-patterns/adapter.md %})
    • [Bridge]({% link _resources/oop/design-patterns/bridge.md %})
    • [Builder]({% link _resources/oop/design-patterns/builder.md %})
    • [Chain of Responsibility]({% link _resources/oop/design-patterns/chain-of-responsibility.md %})
    • [Command]({% link _resources/oop/design-patterns/command.md %})
    • [Composite]({% link _resources/oop/design-patterns/composite.md %})
    • [Decorator]({% link _resources/oop/design-patterns/decorator.md %})
    • [Dependency Injection]({% link _resources/oop/design-patterns/dependency-injection.md %})
    • [Facade]({% link _resources/oop/design-patterns/facade.md %})
    • [Flyweight]({% link _resources/oop/design-patterns/flyweight.md %})
    • [Interpreter]({% link _resources/oop/design-patterns/interpreter.md %})
    • [Iterator]({% link _resources/oop/design-patterns/iterator.md %})
    • [Lazy Loading]({% link _resources/oop/design-patterns/lazy-loading.md %})
    • [Mediator]({% link _resources/oop/design-patterns/mediator.md %})
    • [Memento]({% link _resources/oop/design-patterns/memento.md %})
    • [Mock Object]({% link _resources/oop/design-patterns/mock-object.md %})
    • [Null Object]({% link _resources/oop/design-patterns/null-object.md %})
    • [Object Pool]({% link _resources/oop/design-patterns/object-pool.md %})
    • [Observer]({% link _resources/oop/design-patterns/observer.md %})
    • [Prototype]({% link _resources/oop/design-patterns/prototype.md %})
    • [Proxy Design Pattern]({% link _resources/oop/design-patterns/proxy.md %})
    • [Servant Design Pattern]({% link _resources/oop/design-patterns/servant.md %})
    • [Singleton Design Pattern]({% link _resources/oop/design-patterns/singleton.md %})
    • [State Design Pattern]({% link _resources/oop/design-patterns/state.md %})
    • [Strategy Design Pattern]({% link _resources/oop/design-patterns/strategy.md %})
    • [Template Method]({% link _resources/oop/design-patterns/template-method.md %})
    • [Type Tunnel Design Pattern]({% link _resources/oop/design-patterns/type-tunnel.md %})
    • [Visitor Design Pattern]({% link _resources/oop/design-patterns/visitor.md %})
  • [What is an anti-pattern?]({% link _resources/oop/anti-patterns.md %})

Databases

  • [What is Database and How to Access Database From PHP?]({% link _resources/databases/intro.md %})
  • [Why are mysql_* Functions Removed and What to Do?]({% link _resources/databases/mysql-functions.md %})
  • [PDO vs. mysqli?]({% link _resources/databases/mysqli-or-pdo.md %})
  • [What is PDO?]({% link _resources/databases/pdo.md %})
  • [Database management systems vs. file systems?]({% link _resources/databases/database-vs-filesystem.md %})
  • [MongoDB vs. MySQL]({% link _resources/databases/mongodb-vs-mysql.md %})
  • [What is ORM?]({% link _resources/databases/orm.md %})
  • [How to store files in database?]({% link _resources/databases/files.md %})

Security

  • [How to Secure PHP Web Applications and Prevent Attacks?]({% link _resources/security/intro.md %})
  • [How to Work With Users' Passwords and How to Securely Hash Passwords in PHP?]({% link _resources/security/passwords.md %})
  • [What is SQL injection and how to prevent it?]({% link _resources/security/sql-injection.md %})
  • [How to Securely Upload Files With PHP?]({% link _resources/security/uploading.md %})
  • [Configuration in PHP Applications]({% link _resources/security/configuration.md %})
  • [How to Protect and Hide PHP Source Code?]({% link _resources/security/code-protection.md %})
  • [How to Install SSL Certificate and Enable HTTPS?]({% link _resources/security/ssl.md %})

PHP Frameworks

  • [What is a PHP framework and which one should I learn and use?]({% link _resources/frameworks/frameworks.md %})
  • [How to make your own PHP framework?]({% link _resources/frameworks/create-your-own-framework.md %})
  • [Cake PHP]({% link _resources/frameworks/cakephp.md %})
  • [CodeIgniter]({% link _resources/frameworks/codeigniter.md %})
  • [Laravel]({% link _resources/frameworks/laravel.md %})
  • [Symfony]({% link _resources/frameworks/symfony.md %})
  • [Yii]({% link _resources/frameworks/yii.md %})
  • [Zend Framework]({% link _resources/frameworks/zendframework.md %})

Code Quality and Testing

  • [Writing Quality Code and Code Analysis]({% link _resources/quality/code-quality.md %})
  • [How to Test PHP Code?]({% link _resources/quality/testing.md %})
  • [Behavior Driven Development?]({% link _resources/quality/bdd.md %})
  • [How to Debug PHP Code?]({% link _resources/quality/debugging.md %})
  • [How to Write Standardized PHP Code?]({% link _resources/quality/standards.md %})

Packages, Libraries and Managing Dependencies

  • [Where to Get Open Source PHP Libraries, Scripts and Packages?]({% link _resources/packages/ecosystem.md %})
  • [What is Composer?]({% link _resources/packages/composer.md %})
  • [What is CMS and which one should I use?]({% link _resources/packages/cms.md %})
  • [Which eCommerce application should I use or which framework to use for building eCommerce application?]({% link _resources/packages/ecommerce.md %})
  • [How to work with Excel in PHP?]({% link _resources/packages/excel.md %})
  • [Are there any image manipulation libraries in PHP? Which ones are good?]({% link _resources/packages/image-libraries.md %})
  • [How to add pagination?]({% link _resources/packages/pagination.md %})
  • [What is payment gateway? How to integrate and use payment gateways in PHP?]({% link _resources/packages/payment-gateways.md %})
  • [How to work with PDF files in PHP?]({% link _resources/packages/pdf.md %})
  • [PHP Packages]({% link _resources/packages/packages.md %})

API

  • [What is API?]({% link _resources/api/api.md %})
  • [What is REST?]({% link _resources/api/rest.md %})
  • [What is SOAP?]({% link _resources/api/soap.md %})

Interoperability

  • [Which editor and IDE to choose for writing PHP code?]({% link _resources/interoperability/editor-ide.md %})
  • [Atom Editor for PHP Developers]({% link _resources/interoperability/atom.md %})
  • [What is GIT?]({% link _resources/interoperability/git.md %})
  • [Which are recommended libraries and resources to use with PHP?]({% link _resources/interoperability/intro.md %})
  • [Nopaste List and Services to Share and Run Code Online]({% link _resources/interoperability/nopaste.md %})
  • [Vagrant Tutorial]({% link _resources/interoperability/vagrant.md %})
  • [Web Assets (Images, JavaScript, CSS Files)]({% link _resources/interoperability/assets.md %})

PHP Community

  • [What is PHP Community? What are PHP User Groups?]({% link _resources/community/groups.md %})
  • [What are PHP Conferences and Where Can I Attend One?]({% link _resources/community/conferences.md %})
  • [What is ElePHPant and Why PHP Uses Elephants in Some Logotypes?]({% link _resources/community/elephpant.md %})
  • [How to ask smart questions?]({% link _resources/community/smart-questions.md %})
  • [PHP Podcasts]({% link _resources/community/podcasts.md %})

General

  • [Undefined Variable/Index Notice]({% link _resources/general/undefined-variable-index-notice.md %})
  • [How to detect browser in PHP?]({% link _resources/general/browser-detection.md %})
  • [Where to Get PHP Certification?]({% link _resources/general/certification.md %})
  • [What is web crawling and how to crawl websites with PHP?]({% link _resources/general/crawling.md %})
  • [How to work with date and time in PHP?]({% link _resources/general/date-time.md %})
  • [How to deploy PHP application?]({% link _resources/general/deployment.md %})
  • [Can PHP be used for building desktop applications?]({% link _resources/general/desktop-applications.md %})
  • [How to send email with PHP?]({% link _resources/general/email.md %})
  • [How to show and handle errors in PHP?]({% link _resources/general/errors.md %})
  • [How to detect face with PHP?]({% link _resources/general/face-detection.md %})
  • [$_GET vs $_POST?]({% link _resources/general/get-vs-post.md %})
  • [How to fix Cannot modify header information - headers already sent by... warning?]({% link _resources/general/headers-already-sent.md %})
  • [How to Increase the File Upload Size in PHP?]({% link _resources/general/increase-file-upload-size.md %})
  • [How to get client's IP address in PHP?]({% link _resources/general/ip.md %})
  • [How to detect ISP with PHP?]({% link _resources/general/isp.md %})
  • [Open source licenses]({% link _resources/general/licenses.md %})
  • [How to create Phar (PHP Archive)?]({% link _resources/general/phar.md %})
  • [How to use PHP from the command-line?]({% link _resources/general/cli.md %})
  • [How to make readable, SEO friendly URLs in PHP?]({% link _resources/general/pretty-urls.md %})
  • [What is the difference between a developer and programmer?]({% link _resources/general/professions.md %})
  • [Can you suggest some projects I can make?]({% link _resources/general/projects.md %})
  • [Regex - Regular Expressions in PHP]({% link _resources/general/regex.md %})
  • [What is web scraping and how to scrape data in PHP?]({% link _resources/general/scraping.md %})
  • [How to take screenshot of a URL with PHP?]({% link _resources/general/screenshot.md %})
  • [Single vs double quotes in PHP]({% link _resources/general/single-vs-double-quotes.md %})
  • [How to send SMS with PHP?]({% link _resources/general/sms.md %})
  • [Which PHP template engine to use?]({% link _resources/general/templating.md %})
  • [How to Manage Wildcard Subdomains in PHP?]({% link _resources/general/wildcard-subdomains.md %})
  • [How to fix failed to open stream warning?]({% link _resources/general/warning-include-require-failed-stream.md %})
  • [What is the difference between a Core and Vanilla Developer?]({% link _resources/general/difference-core-and-vanilla.md %})

PHP Best Practices

  • [PHP Best Practices]({% link _resources/best-practices/index.md %})