Functional programming is a paradigm that emphasizes expressing program logic as compositions of pure functions. PHP is a good fit for functional programming as functions are first-class citizens in its userland.
This course introduces you to the core concepts of functional programming, like pure functions, immutable data structures, and referential transparency. From there, you'll explore ways to handle errors with default values and callbacks while also exploring sum types such as Either or Maybe. Next, you'll look at functors before diving deep into monads, including IO, State, Reader, and List.
By the end of this course, you'll have a keen understanding of how to apply these principles in practice through a worked-out project. Not only will you know another way to program, but you’ll also feel confident enough to apply these ideas to your projects in PHP.
Functional programming is a paradigm that emphasizes expressing program logic as compositions of pure functions. PHP is a good f...Show More
WHAT YOU'LL LEARN
A basic understanding of the core concepts of the functional programming paradigm including function composition, immutability, and referential transparency
A working knowledge of functors and monads—handling I/O and neatly processing errors without exceptions
An ability to parallelize tasks in PHP using RabbitMQ and PCNTL
Hands-on experience in writing applications
A basic understanding of the core concepts of the functional programming paradigm including function composition, immutability, and referential transparency
Show more
TAKEAWAY SKILLS
Content
2.
An Introduction to Functional Programming in PHP
10 Lessons
Look at PHP's evolution, functional programming's benefits, and its growing relevance for developers.
A Brief History of PHP and Functional ProgrammingDefining Functional ProgrammingThe Benefits of Functional ProgrammingRelevance to a PHP DeveloperFunctional Programming in Other ContextsPHP is Getting BetterSummary: Introduction to Functional Programming in PHPQuiz: Introduction to Functional Programming in PHPChallenge 1: Product of NumbersChallenge 2: Square of Sum of Numbers
3.
Core Concepts: Functional Programming in PHP
15 Lessons
Examine core functional programming concepts in PHP, emphasizing functions, immutability, and referential transparency.
4.
Composition and Helper Functions
9 Lessons
Apply your skills to composing functions, using higher-order functions, and optimizing data processing.
5.
Error Handling in Functional Programming
8 Lessons
Explore robust error handling techniques in PHP using monads and functional patterns.
6.
Functors in PHP
9 Lessons
Focus on the practical use of functors and monads in PHP programming.
7.
Parallelization of Tasks in PHP
8 Lessons
Master the steps to parallelize tasks in PHP with threading, multiprocessing, and message brokering.
8.
Recursion, Pattern Matching, and Property Testing
7 Lessons
Get familiar with recursion, pattern matching, and property testing in PHP.
9.
Phonebook Application — A Simple Project
5 Lessons
Walk through building a PHP phonebook using functional programming principles and Composer.
11.
Appendix
3 Lessons
Grasp the fundamentals of required installations, additional materials, and key terminology in functional programming.
Certificate of Completion
Showcase your accomplishment by sharing your certificate of completion.
Course Author:
Developed by MAANG Engineers
Trusted by 2.8 million developers working at companies
"These are high-quality courses. Trust me. I own around 10 and the price is worth it for the content quality. EducativeInc came at the right time in my career. I'm understanding topics better than with any book or online video tutorial I've done. Truly made for developers. Thanks"
Anthony Walker
@_webarchitect_
"Just finished my first full #ML course: Machine learning for Software Engineers from Educative, Inc. ... Highly recommend!"
Evan Dunbar
ML Engineer
"You guys are the gold standard of crash-courses... Narrow enough that it doesn't need years of study or a full blown book to get the gist, but broad enough that an afternoon of Googling doesn't cut it."
Software Developer
Carlos Matias La Borde
"I spend my days and nights on Educative. It is indispensable. It is such a unique and reader-friendly site"
Souvik Kundu
Front-end Developer
"Your courses are simply awesome, the depth they go into and the breadth of coverage is so good that I don't have to refer to 10 different websites looking for interview topics and content."
Vinay Krishnaiah
Software Developer
Hands-on Learning Powered by AI
See how Educative uses AI to make your learning more immersive than ever before.
AI Prompt
Code Feedback
Explain with AI
AI Code Mentor
Free Resources