search

Objects are real-world entities. Objects are defined from classes in Object-Oriented Programming like PHP. When a class is defined, we can create many objects out of the class. Example Class Car is defined, then Mercedes, BMW, Skoda are all objects of the Class Car. A class is a blueprint of an object. A class contains variables and functions. These data variables are called properties and data functions are called data methods.

ADVERTISEMENT Popular Course in this category PHP DEVELOPER - Specialization | 8 Course Series | 3 Mock Tests

Start Your Free Software Development Course

Web development, programming languages, Software testing & others

The definition of an object goes like this, An object is an instance of a class. We can create an instance of the class by using the new keyword. We can create multiple instances of the class. These instances can now access the class functions, the class members.

How to Create an Object?

Creating an object is the same as instantiating a class. This instance is created using the new keyword. This process is called instantiationSince objects are instances of a class and can be created using a new keyword let us take a look at how these instances are created.

Syntax:

objectname = new Classname();

Examples:

$parrot = new Bird();
$pigeon = new Bird();
$woodpecker = new Bird();

Above are three different objects of the class Bird. Using these objects we can access the properties and functions of the class Bird.

What is a new keyword?

When we instantiate a class, we are actually creating an object of the class. To create object it is essential to use a new keyword. While using a constructor in a class, the constructor is called automatically when the object is initialized using the new keyword.

Properties of Object

Properties are variables that are defined within a class. These variables are then used by the methods, objects of the class. These variables can be public, protected or private. By default, the public is used. The value of a variable may or may not contain a default value, meaning that the variable may be initialized with a value or not.

The variable names are case sensitive, meaning that $name is different from $Name.  There is a naming convention like if the variable contains more than one word than the second word will start with a capital letter like $firstName, $lastName and so on.

Let us look at the below program to understand the properties.

class Birds {
public $birdsFly = 'sky';
public $birdsSound = 'vocal';
public $birdsBuildNests = 'trees';
}

The following program explains how to declare a class Bird and its properties like a bird flies make sound and build a nest and a method on what a bird does.

Code:

<?php //example to access properties of a class
class Birds {
// properties
public $birdsFly = 'sky';
public $birdsSound = 'vocal';
public $birdsBuildNests = 'trees';
//methods
public function birdDoes()
{
echo 'Bird';
}
}
//object of class is declared
$obj = new Birds();
//properties of class Bird are accessed using object
echo '<br>  Bird Flies =  '.$obj->birdsFly;
echo '<br>  Bird Makes Sound = '.$obj->birdsSound;
echo '<br>  Bird Build Nests = '.$obj->birdsBuildNests;
?>

Output:

Object in PHP

Methods of Object in PHP

As the properties of a class, we can define member functions in a class. These functions can then be called from an object. These functions are called as methods of a class. These functions can be public, private or protected. By default is public. Also while declaring the function we declare it as

Syntax:

public function functionaname() {
//statements
}

Example:

class Bird {
public function makesSound() {
// statements
}
public function looksForFood() {
// statements
}
}
$obj = new Bird;
echo $bird->makesSound();
echo $bird->looksForFood();

Code:

<?php //example to access methods of a class
class Birds {
// properties
public $birdsFly;
public $birdsBuildNests;
//method 1  - set Method1
public function set_birdFlies($input) {
$this->birdsFly = $input ;
}
//method 1 - get Method1
public function get_birdFlies() {
return $this->birdsFly;
}
//method 2  - set Method2
public function set_BirdBuildsNest($input) {
$this->birdsBuildNests = $input ;
}
//method 2 - get Method2
public function get_BirdBuildsNest() {
return $this->birdsBuildNests;
}
}
//object of class is declared
$obj = new Birds();
$obj->set_birdFlies('Fly');
echo '<br>  Bird Flies =  '.$obj->get_birdFlies();
$obj->set_BirdBuildsNest('Trees');
echo '<br>  Bird Builds Nest =  '.$obj->get_BirdBuildsNest();?>

Output:

Object in PHP

Object and Constructors

A constructor is a special method. When a new object is created this method is invoked automatically. There is no need for calling the method explicitly from an object.

Syntax:

__construct();// double underscores are used.

Suppose there are two classes one base class and the other is derived class. If the derived class do not have its own constructor and wants to inherit the base class constructor we need to declare it in the following syntax:

Syntax:

parent::__construct();

Code:

<?php //example to use constructor in a class
class Birds {
// properties
public $makesSound;
// the constructor is called when object is created
public function __construct($input) {
$this->makesSound = $input;
echo 'Bird makes Sound: '.$this->makesSound;
}
}
//object of class is declared
$obj = new Birds('Vocal');
?>

Output:

Object in PHP

Constructor and Object with Inheritance

In the below program we will see that how objects call the base class constructor is internally by creating an object. Since inheritance is used we can use parent:: __construct() to call the base class constructor.

Code:

<?php //example to use constructor and object of a class
class Birds {
// properties
public $bird_flies='sky';
// the constructor is called when object is created
public function __construct() {
echo 'In the Base Class Constructor';
}
}
class EagleBird extends Birds {
function __construct() {
parent::__construct();
}
public function BirdDoes() {
return $this->bird_flies;
}
}
//object of class is declared
$obj = new EagleBird();
echo '<br> Method : ' .$obj->BirdDoes();
?>

Output:

Object in PHP

Conclusion

This article explains what is an object in object-oriented programming, how to create an object, its syntax, how to use an object in a given program. Also, how to declare and use properties and methods of an object in PHP, how to use constructors in PHP. This article has programs that could be helpful to solve your queries and understand the concept well.

The above is the detailed content of Object in PHP. For more information, please follow other related articles on the PHP Chinese website!

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
What is the best way to send an email using PHP?What is the best way to send an email using PHP?May 08, 2025 am 12:21 AM

ThebestapproachforsendingemailsinPHPisusingthePHPMailerlibraryduetoitsreliability,featurerichness,andeaseofuse.PHPMailersupportsSMTP,providesdetailederrorhandling,allowssendingHTMLandplaintextemails,supportsattachments,andenhancessecurity.Foroptimalu

Best Practices for Dependency Injection in PHPBest Practices for Dependency Injection in PHPMay 08, 2025 am 12:21 AM

The reason for using Dependency Injection (DI) is that it promotes loose coupling, testability, and maintainability of the code. 1) Use constructor to inject dependencies, 2) Avoid using service locators, 3) Use dependency injection containers to manage dependencies, 4) Improve testability through injecting dependencies, 5) Avoid over-injection dependencies, 6) Consider the impact of DI on performance.

PHP performance tuning tips and tricksPHP performance tuning tips and tricksMay 08, 2025 am 12:20 AM

PHPperformancetuningiscrucialbecauseitenhancesspeedandefficiency,whicharevitalforwebapplications.1)CachingwithAPCureducesdatabaseloadandimprovesresponsetimes.2)Optimizingdatabasequeriesbyselectingnecessarycolumnsandusingindexingspeedsupdataretrieval.

PHP Email Security: Best Practices for Sending EmailsPHP Email Security: Best Practices for Sending EmailsMay 08, 2025 am 12:16 AM

ThebestpracticesforsendingemailssecurelyinPHPinclude:1)UsingsecureconfigurationswithSMTPandSTARTTLSencryption,2)Validatingandsanitizinginputstopreventinjectionattacks,3)EncryptingsensitivedatawithinemailsusingOpenSSL,4)Properlyhandlingemailheaderstoa

How do you optimize PHP applications for performance?How do you optimize PHP applications for performance?May 08, 2025 am 12:08 AM

TooptimizePHPapplicationsforperformance,usecaching,databaseoptimization,opcodecaching,andserverconfiguration.1)ImplementcachingwithAPCutoreducedatafetchtimes.2)Optimizedatabasesbyindexing,balancingreadandwriteoperations.3)EnableOPcachetoavoidrecompil

What is dependency injection in PHP?What is dependency injection in PHP?May 07, 2025 pm 03:09 PM

DependencyinjectioninPHPisadesignpatternthatenhancesflexibility,testability,andmaintainabilitybyprovidingexternaldependenciestoclasses.Itallowsforloosecoupling,easiertestingthroughmocking,andmodulardesign,butrequirescarefulstructuringtoavoidover-inje

Best PHP Performance Optimization TechniquesBest PHP Performance Optimization TechniquesMay 07, 2025 pm 03:05 PM

PHP performance optimization can be achieved through the following steps: 1) use require_once or include_once on the top of the script to reduce the number of file loads; 2) use preprocessing statements and batch processing to reduce the number of database queries; 3) configure OPcache for opcode cache; 4) enable and configure PHP-FPM optimization process management; 5) use CDN to distribute static resources; 6) use Xdebug or Blackfire for code performance analysis; 7) select efficient data structures such as arrays; 8) write modular code for optimization execution.

PHP Performance Optimization: Using Opcode CachingPHP Performance Optimization: Using Opcode CachingMay 07, 2025 pm 02:49 PM

OpcodecachingsignificantlyimprovesPHPperformancebycachingcompiledcode,reducingserverloadandresponsetimes.1)ItstorescompiledPHPcodeinmemory,bypassingparsingandcompiling.2)UseOPcachebysettingparametersinphp.ini,likememoryconsumptionandscriptlimits.3)Ad

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools

WebStorm Mac version

WebStorm Mac version

Useful JavaScript development tools

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 English version

SublimeText3 English version

Recommended: Win version, supports code prompts!

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.