AI Features
Log In
0% completed
All Lessons
Free Lessons (4)
Getting Started
About This Course
An Introduction to Functional Programming in PHP
A Brief History of PHP and Functional Programming
Defining Functional Programming
The Benefits of Functional Programming
Relevance to a PHP Developer
Functional Programming in Other Contexts
PHP is Getting Better
Summary: Introduction to Functional Programming in PHP
Quiz: Introduction to Functional Programming in PHP
Challenge 1: Product of Numbers
Challenge 2: Square of Sum of Numbers
Core Concepts: Functional Programming in PHP
PHP Functions
Functional Programming and Object-Oriented Programming
Pure Functions
Immutability
Immutable lists
Tries
Value Objects
Temporal Coupling
Transient Mutation
Referential Transparency
REPL Environments For Functional Programming
Summary: Functional Programming Core Concepts
Quiz: Functional Programming Core Concepts
Challenge 1: Remove Temporal Coupling
Challenge 2: Referentially-Transparent Function
Composition and Helper Functions
Function Composition in PHP
Currying and Partial Application
The Map, Filter, and Fold Functions
Transducers
Helper Functions
Summary: Composition and Helper Functions
Quiz: Composition and Helper Functions
Challenge 1: Replica of PHP's "max" Function
Challenge 2: Language Processing with Transducer
Error Handling in Functional Programming
Exceptions in PHP
Non-exception Error Handling Techniques
The Maybe and Either Monads
The Railway Pattern
Summary: Error Handling in Functional Programming
Quiz: Error Handling in Functional Programming
Challenge 1: Eliminate Exceptions Using the Either Monad
Challenge 2: Error Messages Using Maybe Monad
Functors in PHP
The Category Theory
Functors in PHP Programming
Monads
Practical Monads
Other Practical Monads
Summary: Functors in PHP
Quiz: Functors in PHP
Challenge 1: REPL with IO Monad
Challenge 2: Writer Monad
Parallelization of Tasks in PHP
Threading in PHP
Multithreading Extensions in PHP
Multiprocessing in PHP
Message Brokers
Summary: Parallelization of Tasks in PHP
Quiz: Parallelization of Tasks in PHP
Challenge 1: Sentence Formatting Using PCNTL
Challenge 2: Sentence Formatting Using RabbitMQ
Recursion, Pattern Matching, and Property Testing
Recursion in PHP
Pattern Matching in PHP
Property Testing with Eris
Summary: Recursion, Pattern Matching, and Property Testing
Quiz: Recursion, Pattern Matching, and Property Testing
Challenge 1: Recursive Count Function
Challenge 2: Property Testing with Eris
Phonebook Application — A Simple Project
Phonebook Overview
Building the Phonebook App
Implementation of Registry Functionalities
The Phonebook App
Summary: Phonebook Application
Conclusion
Wrap it up!
Appendix
Required Installations
Additional Material
Terminology
Home
Courses
Learn Functional Programming in PHP
PHP is Getting Better
Learn how PHP is getting better with each version.
We'll cover the following...
Performance improvement with subsequent versions
Example
Performance improvement with subsequent versions
...
Ask