A collection of resources to introduce functional programming for PHP programmers. Please see CONTRIBUTING for details and contribute. ;)
Functional programming tutorials in PHP.
- Paradigm Soup by Anthony Ferrara - Tutorial that explains the difference between programming paradigms.
- Functional Programming in PHP by PHP The Right Way - Section about functional programming in PHP The Right Way.
- Functional Programming in PHP by Tuts Plus - Tutorial about functional programming in PHP.
- Functional Programming in PHP by Sitepoint - Another tutorial about functional programming in PHP.
- Functional Programming in PHP by Liip - Another tutorial about functional programming in PHP.
- What are PHP Lambdas and Closures? - Tutorial that explains what is lambdas and closures.
- On PHP 5.3, Lambda Functions, and Closures - Another tutorial about lambdas and closures.
- Currying vs Partial Application - Tutorial that explains the difference between currying and partials.
- Using Partial Application in PHP - Tutorial about partial functions in PHP.
- Memoization or function cache - Tutorial about memoization in PHP.
- Taking Monads to OOP PHP - Tutorial about monads in PHP.
- Functional programming with Monads in PHP - Another tutorial about monads in PHP.
- PHP Functions - Documentation of how functions work in PHP.
- Anonymous Functions - Documentation of how anonymous functions works in PHP.
- Array Map, Array Filter e Array Reduce - Documentation about map, filter and reduce functions in PHP.
- Type Hinting - Difference between Closure and Callable - Difference between Closure and Callable typehints in PHP.
- Callable and is_callable - Documentation about Callable typehint and is_callable function.
- Closure Object Binding in PHP 5.4 - Tutorial about closure object binding in PHP.
- PHP Function Objects - Tutorial about function objects in PHP.
- Namespace PHP functions - Tutorial about namespaces and functions in PHP.
Videos about functional programming in PHP.
- Functional PHP by Larry Garfield - Fantastic talk about functional programming in PHP.
- Go Mad for Monads - Talk about monads in PHP.
Slides about functional programming in PHP.
- Functional PHP - Fantastic talk about functional programming in PHP.
Libraries about functional programming in PHP and related concepts.
- Iter
- Functional PHP
- Underscore.php
- Underscore.php
- php-functional
- monad-php
- Partial
- Promise
- Compose
- transducers-php
- Pramda
Some fantastic functional programming languages that you should learn.
Some fantastic and influential developers that talk about functional programming, PHP and other languages.
- Anthony Ferrara - Co-author of PHP Internals book and Developer Advocate for Google.
- Benjamin Eberlei - Project-leader of Doctrine ORM and contributor to the Symfony2 Framework.
- Igor Wiedler - Creator of Silex micro-framework and open-source contributor to projects like Symfony and Composer.
- Joe Armstrong - Creator of Erlang language.
- José Valim - Creator of Elixir language.
- Larry Garfield - PHP developer and core contributor of Drupal.
- Lars Strojny - PHP developer and creator of Functional PHP library.
- Nikita Popov - Co-author of PHP Internals book, open source contributor and creator of PHP Parser library.
- Simon Holywell - Co-author of PHP Internals book, open source contributor and creator of PHP Parser library.