Build A Modern Rest Api With Php 8
Published 7/2023
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 12.99 GB | Duration: 17h 4m
Published 7/2023
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 12.99 GB | Duration: 17h 4m
Build from scratch a clean PHP 8.2 backend API based on scalable and powerful N-Tier architecture
What you'll learn
Build a robust and professional-grade RESTful PHP API
Be able to create a solid PHP API application from scratch
Concepts of REST APIs and why they are essential in modern web development
Database integration and ORM (Object Relational Mapping)
Be familiar with the PHP dependency manager
Use various packages to speed up the software development time
Best practices while creating an API with PHP (the hidden parts)
Best practices behind designing and implementing a PHP API, including endpoints, HTTP methods and data validation.
API error handling and security measures
Learn the essential newest features any advanced PHP engineers must use such as `match`, `enum`, arrow functions
Rewrite API URLs to friendly readable names (with Apache 2.4)
Requirements
Some knowledge of PHP
Some knowledge of HTML/CSS/JavaScript
A code editor/IDE (PHPStorm, Visual Studio Code, Sublime, TextMate)
Description
Are you eager to master the art of building professional and efficient REST APIs using the latest features of PHP 8? Look no further! This comprehensive Udemy course will equip you with all the necessary skills and knowledge to create robust n-tier RESTful APIs using PHP 8.2.Whether you are a seasoned PHP developer or a beginner looking to dive into API development, this course is designed to cater to your needs. Through a hands-on approach, you'll learn step-by-step how to design, build, and secure a fully functional REST API from scratch.Starting with the fundamentals, you'll gain a solid understanding of the REST architectural style and its principles. You'll explore the HTTP protocol and learn how to leverage its methods and status codes to create API endpoints that adhere to industry standards.As you progress, you'll delve into the world of PHP 8, discovering its latest features and enhancements that make API development more streamlined and efficient. You'll learn how to set up your development environment, configure PHP for optimal performance, and harness the power of the PHP 8 syntax (such as the `match` expression, the PHP 8.1 `enums`, and so much more!).Throughout the course, you'll work on real-world projects, allowing you to apply your knowledge to practical scenarios. You'll learn how to handle authentication and authorization, implement CRUD operations, handle error responses, and optimize your API for scalability and performance.Moreover, you'll explore best practices and design patterns for building clean, maintainable, and testable code. You'll become familiar with popular PHP frameworks and libraries that simplify the API development process, such as Laravel, Lumen, and Slim.In addition to these frameworks, you'll also utilize essential Composer packages like RedBean and DotEnv PHP. RedBean provides an easy-to-use ORM (Object-Relational Mapping) solution for database management, while DotEnv PHP allows you to manage environment variables effortlessly, enhancing the security and portability of your API.By the end of this course, you'll have a solid foundation in creating RESTful APIs using PHP 8 and be ready to tackle complex API projects with confidence. Whether you're building APIs for mobile applications, web services, or IoT devices, this course will empower you to unleash the full potential of PHP 8 for API development.Enrol the course now and embark on a journey to become a proficient REST API developer with PHP 8!
Overview
Section 1: Fundation
Lecture 1 1. PHP API from scratch
Lecture 2 2. PHP in 2023
Lecture 3 3. JWT Token with RESTFul API
Section 2: Building the backend API
Lecture 4 4. Install Composer & Firebase PHP JWT
Lecture 5 5. Create your first file!
Lecture 6 6. Include files and composer autoloader
Lecture 7 7. Creating endpoints in our PHP service
Lecture 8 8. PHP 8.1 User & Composer requirements
Lecture 9 9. (if needed) Upgrade your PHP version to correct one
Lecture 10 10. Use an API client (Insomnia - Postman)
Lecture 11 11. HTTP methods for RESTful API architecture CRUD
Lecture 12 12. Implement User class
Lecture 13 13. Helpers and Headers
Lecture 14 14. Add namespace and composer autoload
Lecture 15 15. Implementing your first API Routes
Lecture 16 16. Implement match and enum PHP 8.0 and 8.1
Lecture 17 17. Completing user routes and handle requests
Lecture 18 18. Read the API payload body data and that it from the backend server
Lecture 19 19. Validate endpoints
Lecture 20 20. Add missing arguments
Lecture 21 21. Initialize Git
Lecture 22 22. Add just-http-status-codes and php-http-response-header packages
Lecture 23 23. Save our code on a Git hosting platform (GitHub)
Lecture 24 24. Refactor the payload validation
Lecture 25 25. Add support for generating UUID (GUID)
Lecture 26 26. Setup ORM RedBeanPHP, and MySQL on development machine
Lecture 27 27. Handle exceptions beautifully and convert into JSON format
Section 3: Apache local host
Lecture 28 28. Setup a local Apache Server
Section 4: Avances concerts for the backend API
Lecture 29 29. Set a default response on index root request
Lecture 30 30. Rewrite URLs to beautiful friendly ones
Lecture 31 31. Let's use the RedBeanPHP ORM in our API
Lecture 32 32. Secure RedBeanPHP
Lecture 33 33. Codebase Quick Cleanup
Lecture 34 34. Retrieve a user from the database with RedBeanPHP
Lecture 35 35. Retrieve all users from the database with RedBeanPHP
Lecture 36 36. Remove an existing user from the database (with RedBean PHP)
Lecture 37 37. Update a saved user in the database
Lecture 38 38. Refactor PHP enum in user.routes
Lecture 39 39. Send proper HTTP status codes for each API endpoint
Lecture 40 40. Clean Code - Write self-documenting code instead of comments
Lecture 41 Let's create the Food Item
Lecture 42 42. Validate the received HTTP methods for API endpoints
Lecture 43 43. Make sure a user has a unique email + save and encrypt password
Lecture 44 44. Optional - Move hash_password to its own function
Lecture 45 45. Login a user
Lecture 46 46. Store the JWT expiry time into ENV variable
Lecture 47 47. Refactoring - Implement UserEntity into User Data Access Layer
Lecture 48 48. Refactoring - Create FoodEntity to build a food product
Lecture 49 49. Store JWT token into database table
Lecture 50 50. Store user JWT token and last activity into the database
Lecture 51 51. Good practices and enhancements
Section 5: Unit Testing
Lecture 52 52. Start writing your unit tests. Setup and configure PHPUnit
Lecture 53 53. Add your unit tests - Part 1 (User Entity)
Lecture 54 54. Add your unit tests - Part 2
Lecture 55 55. Add CI GitHub workflows pipeline
Section 6: What about the client? Frontend
Lecture 56 56. What's next? Build your frontend
Lecture 57 57. Architecture Diagram - Backend and Frontend
Lecture 58 Diagram - Example of a PHP REST API architecture
Section 7: Source Code / GitHub Repositories
Lecture 59 Final Source Code and GitHub Repository
Section 8: Conclusion
Lecture 60 Follow Me Around for more!
Lecture 61 External resources
Lecture 62 Online PHP 8.2 Sandbox
Anyone who needs to build a REST API from scratch with PHP,Anyone seeking to build a real-world PHP API, from start to end,Anyone wishing to level up their skills in building complex PHP API applications,Anyone looking to work with PHP 8 for Web development,Level up your skillset and confidence in PHP / OOP for building complex applications (e.g. APIs),Anyone looking to build an API from the very beginning to the end, including clean code, good practices and design patterns