
Begin with object oriented programming fundamentals in php, transitioning from procedural php, then build a photo gallery content management system project with room for feature additions and feedback.
Watch Edwin from the future guide you through debugging bugs, embracing mistakes as learning opportunities, and compare your solutions to future fixes to become a better PHP OOP programmer.
Navigate the Udemy course interface, adjust video quality, view transcripts, notes, Q&A, and resources, and learn about editors like Visual Studio Code and JetBrains IDEs.
Download and install Xampp to run PHP and databases on your computer, then start Apache and MySQL and verify by opening localhost, with no changes to your system.
Discover how to enable display_errors in PHP, view errors with a PHP info page on your local host, and restart Apache and MySQL after adjustments.
Discover how PHP applications run locally with XAMPP. Start Apache and MySQL, access via localhost, and manage databases with a GUI or CLI.
Explore fundamental PHP object-oriented programming (oop) concepts, including classes, inheritance, methods, properties, instantiation, access modifiers, setters and getters, and constructors, to prepare for the upcoming project.
Explore how classes serve as blueprints for objects in PHP, declare and instantiate classes, and work with built-in classes, time zones, and runtime behavior.
Explore methods in PHP OOP by declaring and using class methods, understanding access modifiers, and inspecting class methods with built-in tools like get_class_methods and vardump.
Learn how class instantiation creates objects from a blueprint using the new keyword. Create multiple instances with the same blueprint and access their object methods via arrow syntax.
Define properties and constructor in a PHP class by declaring a public username and using this to assign inputs. Explain access modifiers and how the constructor requires a username parameter.
Explore class inheritance in PHP by extending a user class to an admin, reusing name and email, adding a role, and calling the parent constructor. Also implement display methods.
Explore php object oriented programming by mastering access modifiers: public, protected, and private, and learn how visibilities control data and method access within classes and subclasses.
Learn how static data in PHP belongs to the class, not instances, using static properties and methods with self and ::, and incrementing a class-wide counter on each new object.
Explore getters and setters in PHP OOP by managing user properties via a constructor and methods, including validating and updating an email with a setter and retrieving it with getter.
Explore the project overview to build a PHP OOP dashboard with login, pagination, Google API integration, Ajax uploads, jQuery interactions, and Bootstrap-driven responsive UI.
Set up a bootstrap-based gallery project structure with directories for index, includes, css, fonts, JavaScript, and an admin area to practice object oriented programming in PHP.
Learn to edit and reorganize a PHP project by adding and removing files, refactoring navigation with includes, and creating modular admin content for a cleaner CMS structure.
Clean up the admin navigation by removing unused items, set links for dashboard, users, upload, and comments pages, and add placeholders for future pages.
Build and organize admin pages (users, upload, photos, comments) in PHP, wiring them to a shared admin layout, updating titles and navigation for a cohesive project foundation.
Create a gallery_db database and a users table in phpMyAdmin with id as an auto-incrementing primary key and columns for username, password, first_name, and last_name.
Build a PHP database class using object oriented programming, with a connection, initialization, and helpful methods to manage queries. Organize code with user and photos classes.
Create config.php to define database connection constants such as host, user, password, and name (Gallery_db). Test the connection using mysqli_connect to confirm a successful link to the localhost server.
Initialize your CMS with a central init.php that includes the new_config.php and defines paths, addressing a future database conflict by renaming config.php to new_config.php for reliable includes.
Include the init.php file in your header to initialize all files, and enable output buffering with ob_start to prepare for redirects later.
Create a PHP database class to manage the connection, using a private property and an open connection method. Include config.php and instantiate the class to open the DB in init.php.
Make the private variable public to ensure a shared database connection across classes as the course expands into inheritance and broader database usage.
Learn to implement automatic database connection setup in PHP with a constructor, ensuring the connection opens automatically across pages while keeping the database property private and publicly testable.
Extend your PHP OOP project by adding a public query method that executes an SQL query using the stored connection, returns the result set, and handles failed queries.
Extend the database class by adding a private confirm_query method and a public escape_string wrapper around mysqli_real_escape_string for safer, reusable code.
Test your query methods by inserting user data and running a select from users where id = 1, then fetch the result via the class method and verify the username.
Convert the procedural mysqli connection to an object oriented approach using a mysqli object and a connection property, then test queries, real escape string, and insert ID.
Create and instantiate a user class, manage users with username and password, and build a photo library that sends photos via Ajax to a PHP server.
Create a dedicated user class to manage users, implement a find_all_users method via a database class, keep user and database queries separate, and include the class in init.php.
Testing the find_all method, the lecture demonstrates instantiating the user class, calling the method, and looping through the resulting set with mysqli_fetch_array to reveal user data.
Utilize static methods and properties to streamline code by calling them through the class name using two dots, reducing unnecessary instantiation and improving reusability.
Create a find user by id method in php oop project, using a static function, mysqli fetch array, and limit one result to reliably retrieve a username.
Enhance a user class with a universal static query method that executes any SQL and returns a result set, demonstrated via CMS testing.
Convert plain arrays to objects by defining user properties (id, username, first name, last name, password), instantiate a user, assign values to properties, and echo the id.
Use a static method to auto instantiate an object, bring in values from the database, and loop through arrays to assign values to the object's properties.
Test the static instantiation method by making it public and passing a user parameter to construct the object from the database result set.
Learn to automate instantiation and property assignment by looping over database records, mapping associative array keys to object attributes, and conditionally setting values without manual typing.
Create a private method to check if an object has a given attribute using get_object_vars and array_key_exists, returning true or false based on the object's properties.
Return objects from a database query by applying the instantiation method, building an object array of user properties.
Learn to use an instantiation method to fetch all user objects, iterate with foreach, and print usernames, while building universal, reusable object-oriented programming methods for future classes in PHP.
Learn to fetch a single user by ID using a PHP OOP approach, instantiate objects from query results, and return the first item or false when no match.
Discover how to implement a PHP autoload function to automatically load undeclared classes, provide a safety net for missing files, and improve error handling.
Replace the deprecated autoload with SPL autoload register to enable multiple autoloaders. The lecture shows building a custom autoloader, testing it, and refining it with file and class existence checks.
On this lecture I explain what the most important methods are doing!
Build a session class to manage gallery system sessions in one place. Implement login, logout, admin access, user validation, and view tracking with an object oriented approach.
Learn to start and manage user sessions in PHP by building a session class, using require_once for security, and automatically starting sessions to support the login system.
Implement a private login check method in PHP OOP to verify the session user ID, assign it to the object, unset the user ID, and update the sign-in status accordingly.
Learn to set a default session value, auto-invoke login in the constructor, and implement a getter and login method that verifies users from the database and updates session IDs.
Create a logout method in the session class that unsets session data, clears the login flag, and requires users to log in again through the login form.
Control access to the admin area by checking the session and redirecting unauthenticated users to login.php using a custom redirect function in functions.php.
Create a PHP object-oriented login page that validates post data, trims inputs, checks user credentials, and logs in via sessions with redirect to index and clear error handling.
Develop a static verify user method in the user class to validate the provided username and password against the database, sanitizing input and returning a result for login.
Create verify method by building a sql query to select from users where username equals input and password equals input, limit one, returning user object or false via a ternary.
Learn why you cannot return twice inside a function in php object oriented programming and how to fix a past mistake by removing an unnecessary return.
Position the login.php file outside the includes directory inside the admin folder, at the same level as index.php.
Demonstrates creating a login form, validating credentials via a verify user method, handling submission, and redirecting to the admin index, with debugging and include adjustments.
Build and test a login and logout feature in a PHP gallery system, using session handling, redirection, and a simple log out page linked in the top navigation.
Learn to create a PHP OOP message method that stores and outputs session messages for actions like delete or update, with a check message method and constructor initialization.
Learn how to provide user-friendly login feedback in a PHP OOP context by preserving input, sanitizing output with HTML entities, and displaying clear error messages using Bootstrap styling.
Explore file basics and learn how to set file permissions on Linux and Unix systems, and discover PHP functions to get paths for a photo-centered project on Ubuntu servers.
Set up secure file permissions by separating uploaded files from main app files, and apply read, write, and execute rights using symbolic and octal notations.
Learn to handle files and directories in PHP, using magic constants like __FILE__ and __DIR__. Explore file_exists and the ternary operator to simplify checks in a gallery project.
Explore file upload in PHP, learn common upload errors, configure php.ini settings, move files between locations, and understand the upload file structure using the superglobal files.
Discover how to configure PHP for file uploads by adjusting file_uploads, post_max_size, upload_max_filesize, memory_limit, and more, locate and edit the PHP configuration file, and verify settings with phpinfo and localhost.
Learn to send files via an HTML form using multipart/form-data in a PHP post request, including input type file handling and moving uploads from temp to a permanent location.
Analyze the uploaded file structure using the PHP file superglobal, exploring keys name, type, size, tmp_name, and error, and how to move the temporary file to a permanent location.
Learn to handle PHP file upload errors by mapping error codes to descriptive messages with an associative array, using constants over numbers, and displaying user-friendly feedback after form submission.
Learn how to move an uploaded file from a temporary location to a server uploads folder using move_uploaded_file, handling temp name and file name with success or error messages.
Explore object oriented PHP, learn CRUD (create, delete, read, update), test methods, and debug to advance your web development career.
Explore the create operation of CRUD by inserting user data into the database, escaping strings, and assigning values to the user object.
Implement the create method to run the database query, return true or false, and prepare to capture the auto-incremented insert ID for the object.
Create a custom insert id method in the database class to return the last mysqli insert_id, assign it to the user object, and prepare for testing the create method.
Instantiate a user class object with static values, call its create method to insert into the database columns, and update the object with the new id; verify the result in phpMyAdmin.
Implement an update method in PHP using mysqli, escaping values, and building an update query for the users table, returning true on success via a ternary based on affected rows.
Verify the update method by retrieving a user by ID, modifying the last name to Williams, and calling the update operation to persist changes in a PHP OOP context.
Master PHP OOP with Hands-On Real-Life Projects: Propel Your Career with Edwin Diaz’s PHP OOP Course
If you’re looking to elevate your PHP skills and break into the world of Object-Oriented Programming (OOP), Edwin Diaz’s PHP OOP course is designed just for you. Whether you’re a beginner eager to gain practical experience or someone who has grasped the basics of PHP but needs that extra push to reach the next level, this course is your gateway to success. With real-life projects, on-demand OOP skills, and a commitment to student support, this course offers everything you need to become proficient in PHP OOP.
Why PHP OOP Is Essential
Object-Oriented Programming is no longer optional in today’s web development landscape—it’s a necessity. Mastering PHP OOP is crucial for anyone looking to build robust, scalable, and maintainable applications. This course is structured to ensure that you not only understand the theory behind OOP but also apply it through practical projects that mirror real-world scenarios.
What You’ll Gain from Edwin Diaz’s PHP OOP Course
1. Real-Life Projects for Practical Experience
The course is packed with hands-on, real-life PHP OOP projects that provide you with the practical experience needed to excel. You won’t just learn the concepts; you’ll implement them in projects that simulate real-world applications. This is where you truly grasp how PHP OOP works in a professional environment.
2. On-Demand OOP Skills
OOP skills are in high demand, and this course equips you with the knowledge and expertise that employers are looking for. By the end of the course, you’ll be proficient in PHP OOP, ready to tackle complex projects and advance your career.
3. Updated PHP Code and Techniques
The tech world evolves quickly, and so does this course. Edwin Diaz ensures that all the content is up-to-date with the latest PHP standards and best practices. You’ll learn the newest PHP OOP techniques, ensuring that your skills are current and relevant.
4. Easy-to-Follow Lectures
Understanding complex concepts can be challenging, but Edwin’s teaching style makes learning PHP OOP accessible to everyone. The lectures are designed to be clear, concise, and easy to follow, ensuring that you can grasp even the most challenging topics.
5. Instructor Support and Engagement
One of the standout features of this course is the level of support you’ll receive. Edwin Diaz is not just an instructor; he’s a mentor who cares deeply about your education. He is committed to providing prompt, comprehensive support to all his students, ensuring that no question goes unanswered.
Why Choose This Course?
You Need Real-World Experience: If you’ve taken other courses but still feel unprepared for real-world applications, this course bridges that gap. It’s designed to give you the hands-on experience that other courses lack.
You Want an Engaged Instructor: Edwin Diaz is known for his responsive and supportive teaching style. If you value an instructor who is available to help you every step of the way, this course is for you.
You Want Updated Content: Technology changes rapidly, and this course is continually updated to reflect the latest PHP OOP practices. You’ll be learning from the most current and relevant content available.
How This Course Can Transform Your Career
Freelancing Opportunities
Learning PHP OOP opens up a world of freelancing opportunities. With the skills you gain from this course, you’ll be equipped to take on high-paying freelance projects. The potential earnings are significant—many skilled PHP developers earn well above the average salary by freelancing.
High-Paying Job Prospects
PHP is one of the most widely-used web programming languages globally, powering major websites like Google, Apple, Facebook, Yahoo, and Wikipedia. With PHP OOP skills, you’ll be well-positioned to secure a high-paying job as a developer. Starting salaries in the U.S. for PHP developers range from $60,000 to $150,000 annually, and with experience, these numbers can increase significantly.
Advanced Project Creation
This course doesn’t just teach you the basics—it takes you through advanced project creation, giving you the skills to build complex, dynamic web applications. You’ll learn how to create scalable and efficient code, a critical skill for any successful developer.
Why Edwin Diaz’s Courses Stands Out
Real-Life Projects: Engage in projects that reflect actual industry scenarios, giving you the confidence to tackle professional challenges.
Continuous Updates: The course content is regularly updated, ensuring you’re learning the most up-to-date techniques and best practices.
Full Instructor Support: Edwin Diaz provides prompt and comprehensive support, guiding you through each stage of your learning journey.
No Boring Lectures: The content is designed to be engaging and informative, keeping you interested and motivated throughout the course.
Money-Back Guarantee: With a 100% money-back guarantee within 30 days, you have nothing to lose and everything to gain. If for any reason you’re not satisfied with the course, you can get a full refund—no questions asked.
Take the First Step Toward Your Dream Career
PHP has enabled Edwin Diaz to build a successful career, giving him the freedom and flexibility to teach others. Now, he’s offering you the same opportunity to succeed. By mastering PHP OOP through this course, you can create the life you’ve always dreamed of—whether that means freelancing, securing a top-paying job, or building your own web applications.
Don’t miss out on this chance to transform your career with Edwin Diaz’s PHP OOP course. With comprehensive, up-to-date content, real-life projects, and full support from an experienced instructor, this course offers everything you need to become a professional PHP developer. Enroll today and start your journey toward mastering PHP OOP and unlocking new career opportunities.