Skip to content
geeksforgeeks
  • Tutorials
    • Python
    • Java
    • Data Structures & Algorithms
    • ML & Data Science
    • Interview Corner
    • Programming Languages
    • Web Development
    • CS Subjects
    • DevOps And Linux
    • School Learning
    • Practice Coding Problems
  • Courses
    • DSA to Development
    • Get IBM Certification
    • Newly Launched!
      • Master Django Framework
      • Become AWS Certified
    • For Working Professionals
      • Interview 101: DSA & System Design
      • Data Science Training Program
      • JAVA Backend Development (Live)
      • DevOps Engineering (LIVE)
      • Data Structures & Algorithms in Python
    • For Students
      • Placement Preparation Course
      • Data Science (Live)
      • Data Structure & Algorithm-Self Paced (C++/JAVA)
      • Master Competitive Programming (Live)
      • Full Stack Development with React & Node JS (Live)
    • Full Stack Development
    • Data Science Program
    • All Courses
  • PHP Tutorial
  • PHP Exercises
  • PHP Array
  • PHP String
  • PHP Calendar
  • PHP Filesystem
  • PHP Math
  • PHP Programs
  • PHP Array Programs
  • PHP String Programs
  • PHP Interview Questions
  • PHP GMP
  • PHP IntlChar
  • PHP Image Processing
  • PHP DsSet
  • PHP DsMap
  • PHP Formatter
  • Web Technology
Open In App
Next Article:
Php Classes and Objects
Next article icon

Php Classes and Objects

Last Updated : 17 Apr, 2025
Comments
Improve
Suggest changes
Like Article
Like
Report

In PHP, Object-Oriented Programming (OOP) makes it easier to organize and reuse code. The two fundamental building blocks in OOP are classes and objects.

PHP Classes

A class in PHP is a blueprint for creating objects. It defines the properties (variables) and methods (functions) that the objects created from the class will have. By using classes, we can group related data and actions, making it easier to organize and manage our code.

In PHP, a class is defined using the class keyword, followed by the class name and curly braces.

Syntax:

<?php class Cars {   // PHP code goes here... } ?>

Now, let us understand with the help of the example:

PHP
<?php class Car {     public $brand, $model, $year;     function __construct($brand, $model, $year) {         $this->brand = $brand;         $this->model = $model;         $this->year = $year;     }     function displayInfo() {         echo "$this->brand $this->model, $this->year";     } } $car = new Car("Toyota", "Corolla", 2021); $car->displayInfo(); ?> 

Output
Toyota Corolla, 2021

In this example:

  • The Car class is defined with three properties: $brand, $model, and $year.
  • The __construct() method initializes the properties when a new object of the Car class is created, using the provided values.
  • The displayInfo() method is defined to print out the car's brand, model, and year.
  • A new object $car is created from the Car class, and values ("Toyota", "Corolla", 2021") are passed to the constructor.
  • The displayInfo() method is called on the $car object to display the car's details: "Toyota Corolla, 2021".

To read more about PHP classes refer this article - PHP Classes

PHP Objects

An object is an instance of a class. When you create an object from the class, memory is allocated, and the object can store data and perform actions defined in the class. To create an object, we use the new keyword.

Syntax:

$objectName = new ClassName($value);

Now, let us understand with the help of the example:

PHP
<?php class Car {     public $brand;      function __construct($brand) {         $this->brand = $brand;     }      function displayInfo() {         echo "Car brand: $this->brand";     } } $myCar = new Car("Toyota"); $myCar->displayInfo();  // Output: Car brand: Toyota ?> 

Output
Car brand: Toyota

In this example:

  • The Car class has one property, $brand, and a method displayInfo() to display the car's brand.
  • An object $myCar is created from the Car class with the brand "Toyota".
  • The displayInfo() method is called to show the car's brand.

To read more about PHP Objects refer this article - PHP Objects

Using the $this Keyword

In PHP, the $this keyword is used within a class to refer to the current object. It allows you to access properties and methods of the current object from within the class.

Now, let us understand with the help of the example:

PHP
<?php class Car {     public $brand;     public $model;     // Constructor to initialize properties     public function __construct($brand, $model) {         $this->brand = $brand;  // Accessing current object property         $this->model = $model;  // Accessing current object property     }     // Method to display information     public function displayInfo() {         echo "Car Brand: $this->brand, Model: $this->model";     } } $myCar = new Car("Toyota", "Corolla"); $myCar->displayInfo();   ?> 

Output
Car Brand: Toyota, Model: Corolla

In this example:

  • $this->brand refers to the brand property of the current object ($myCar).
  • $this->model refers to the model property of the current object.
  • The displayInfo() method uses $this to access the properties of the object and display them.

Why Use Classes and Objects?

  • Code Reusability: Classes allow you to define functionality once and reuse it across multiple objects, reducing code duplication.
  • Flexibility: Inheritance and polymorphism allow you to extend and modify functionality easily without rewriting code.
  • Maintainability: Classes make it easier to update and expand your code because changes are limited to specific parts of the code (the class) rather than affecting everything.

Conclusion

PHP classes and objects are essential tools for organizing and managing code in an object-oriented way. A class acts as a blueprint for creating objects, while an object is an instance of that class. The $this keyword helps access an object's properties. By understanding these concepts, you can create more flexible, reusable, and organized PHP code.


Next Article
Php Classes and Objects

A

anjalisa6ys
Improve
Article Tags :
  • PHP

Similar Reads

    PHP Objects
    An object in PHP is an instance of a class. Objects are used to store data (properties) and define behaviors (methods) that can be used within an application. An object is created using the new keyword followed by the class name.Syntax:$objectName = new ClassName();Now, let us understand with the he
    4 min read
    PHP Classes
    A class defines the structure of an object. It contains properties (variables) and methods (functions). These properties and methods define the behavior and characteristics of an object created from the class.Syntax:<?phpclass Camera { // code goes here...}?>Now, let us understand with the hel
    2 min read
    PHP | is_object() Function
    The is_object() function is an inbuilt function in PHP which is used to check whether the given value is an object or not. Syntax: bool is_object( mixed $var ) Parameters: This function accepts single parameter as mentioned above and described below: $var: It contains the value of variable that need
    1 min read
    Abstract Classes in PHP
    Abstract classes in PHP are classes that may contain at least one abstract method. Unlike C++, abstract classes in PHP are declared using the abstract keyword. The purpose of abstract classes is to enforce that all derived classes implement the abstract methods declared in the parent class. An abstr
    2 min read
    How to Create an Object Without Class in PHP ?
    In PHP, creating an object without a class refers to creating an instance of the stdClass, a built-in PHP class for creating generic objects. It allows developers to instantiate objects without explicitly defining a custom class, often used for dynamic data storage.In this article, we will create an
    3 min read
geeksforgeeks-footer-logo
Corporate & Communications Address:
A-143, 7th Floor, Sovereign Corporate Tower, Sector- 136, Noida, Uttar Pradesh (201305)
Registered Address:
K 061, Tower K, Gulshan Vivante Apartment, Sector 137, Noida, Gautam Buddh Nagar, Uttar Pradesh, 201305
GFG App on Play Store GFG App on App Store
Advertise with us
  • Company
  • About Us
  • Legal
  • Privacy Policy
  • In Media
  • Contact Us
  • Advertise with us
  • GFG Corporate Solution
  • Placement Training Program
  • Languages
  • Python
  • Java
  • C++
  • PHP
  • GoLang
  • SQL
  • R Language
  • Android Tutorial
  • Tutorials Archive
  • DSA
  • Data Structures
  • Algorithms
  • DSA for Beginners
  • Basic DSA Problems
  • DSA Roadmap
  • Top 100 DSA Interview Problems
  • DSA Roadmap by Sandeep Jain
  • All Cheat Sheets
  • Data Science & ML
  • Data Science With Python
  • Data Science For Beginner
  • Machine Learning
  • ML Maths
  • Data Visualisation
  • Pandas
  • NumPy
  • NLP
  • Deep Learning
  • Web Technologies
  • HTML
  • CSS
  • JavaScript
  • TypeScript
  • ReactJS
  • NextJS
  • Bootstrap
  • Web Design
  • Python Tutorial
  • Python Programming Examples
  • Python Projects
  • Python Tkinter
  • Python Web Scraping
  • OpenCV Tutorial
  • Python Interview Question
  • Django
  • Computer Science
  • Operating Systems
  • Computer Network
  • Database Management System
  • Software Engineering
  • Digital Logic Design
  • Engineering Maths
  • Software Development
  • Software Testing
  • DevOps
  • Git
  • Linux
  • AWS
  • Docker
  • Kubernetes
  • Azure
  • GCP
  • DevOps Roadmap
  • System Design
  • High Level Design
  • Low Level Design
  • UML Diagrams
  • Interview Guide
  • Design Patterns
  • OOAD
  • System Design Bootcamp
  • Interview Questions
  • Inteview Preparation
  • Competitive Programming
  • Top DS or Algo for CP
  • Company-Wise Recruitment Process
  • Company-Wise Preparation
  • Aptitude Preparation
  • Puzzles
  • School Subjects
  • Mathematics
  • Physics
  • Chemistry
  • Biology
  • Social Science
  • English Grammar
  • Commerce
  • World GK
  • GeeksforGeeks Videos
  • DSA
  • Python
  • Java
  • C++
  • Web Development
  • Data Science
  • CS Subjects
@GeeksforGeeks, Sanchhaya Education Private Limited, All rights reserved
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy
Lightbox
Improvement
Suggest Changes
Help us improve. Share your suggestions to enhance the article. Contribute your expertise and make a difference in the GeeksforGeeks portal.
geeksforgeeks-suggest-icon
Create Improvement
Enhance the article with your expertise. Contribute to the GeeksforGeeks community and help create better learning resources for all.
geeksforgeeks-improvement-icon
Suggest Changes
min 4 words, max Words Limit:1000

Thank You!

Your suggestions are valuable to us.

What kind of Experience do you want to share?

Interview Experiences
Admission Experiences
Career Journeys
Work Experiences
Campus Experiences
Competitive Exam Experiences