Introducción sobre objetos en PHP
Los objetos son entidades del mundo real. Los objetos se definen a partir de clases en la programación orientada a objetos como PHP. Cuando se define una clase, podemos crear muchos objetos fuera de la clase. Ejemplo de Class Car se define, entonces Mercedes, BMW, Skoda son todos los objetos del Class Car. Una clase es un plano de un objeto. Una clase contiene variables y funciones. Estas variables de datos se denominan propiedades y las funciones de datos se denominan métodos de datos.
La definición de un objeto es así: Un objeto es una instancia de una clase. Podemos crear una instancia de la clase utilizando la nueva palabra clave. Podemos crear múltiples instancias de la clase. Estas instancias ahora pueden acceder a las funciones de clase, los miembros de la clase.
¿Cómo crear un objeto?
Crear un objeto es lo mismo que crear una instancia de una clase. Esta instancia se crea con la nueva palabra clave. Este proceso se llama instanciación . Dado que los objetos son instancias de una clase y se pueden crear usando una nueva palabra clave, echemos un vistazo a cómo se crean estas instancias.
Sintaxis:
objectname = new Classname();
Ejemplos:
$parrot = new Bird();
$pigeon = new Bird();
$woodpecker = new Bird();
Arriba hay tres objetos diferentes de la clase Bird. Con estos objetos podemos acceder a las propiedades y funciones de la clase Bird.
¿Qué es una nueva palabra clave?
Cuando instanciamos una clase, en realidad estamos creando un objeto de la clase. Para crear un objeto es esencial usar una nueva palabra clave. Al usar un constructor en una clase, se llama al constructor automáticamente cuando el objeto se inicializa usando la nueva palabra clave.
Propiedades del objeto
Las propiedades son variables que se definen dentro de una clase. Estas variables son luego utilizadas por los métodos, objetos de la clase. Estas variables pueden ser públicas, protegidas o privadas. Por defecto, se utiliza el público. El valor de una variable puede contener o no un valor predeterminado, lo que significa que la variable puede inicializarse con un valor o no.
Los nombres de las variables distinguen entre mayúsculas y minúsculas, lo que significa que $ name es diferente de $ Name. Existe una convención de nomenclatura como si la variable contiene más de una palabra que la segunda palabra comenzará con una letra mayúscula como $ firstName, $ lastName y así sucesivamente.
Echemos un vistazo al siguiente programa para comprender las propiedades.
class Birds (
public $birdsFly = 'sky';
public $birdsSound = 'vocal';
public $birdsBuildNests ='trees';
)
El siguiente programa explica cómo declarar un pájaro de clase y sus propiedades, como las moscas de un pájaro, hacen sonido y construyen un nido y un método sobre lo que hace un pájaro.
Código:
<_?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 '
Bird Flies = '.$obj->birdsFly;
echo '
Bird Makes Sound = '.$obj->birdsSound;
echo '
Bird Build Nests = '.$obj->birdsBuildNests;
?>
Salida:
Pájaro vuela = cielo
Bird hace sonido = vocal
Las aves construyen nidos = árboles
Métodos de objeto en PHP
Como propiedades de una clase, podemos definir funciones miembro en una clase. Estas funciones se pueden invocar desde un objeto. Estas funciones se llaman como métodos de una clase. Estas funciones pueden ser públicas, privadas o protegidas. Por defecto es público. Además, al declarar la función, la declaramos como
Sintaxis:
public function functionaname() (
//statements
)
Ejemplo:class Bird (
public function makesSound() (
// statements
)
public functions looksForFood() (
// statements
)
)
$obj = new Bird;
echo $bird->makesSound();
echo $bird->looksForFood();
Código:
<_?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 '
Bird Flies = '.$obj->get_birdFlies();
$obj->set_BirdBuildsNest('Trees');
echo '
Bird Builds Nest = '.$obj->get_BirdBuildsNest();?>
Salida:
Pájaro vuela = volar
Bird Builds Nest = Árboles
Objeto y constructores
Un constructor es un método especial. Cuando se crea un nuevo objeto, este método se invoca automáticamente. No es necesario llamar al método explícitamente desde un objeto.
Sintaxis:
__construct();// double underscores are used.
Supongamos que hay dos clases, una clase base y la otra es una clase derivada. Si la clase derivada no tiene su propio constructor y quiere heredar el constructor de la clase base, debemos declararlo en la siguiente sintaxis:
Sintaxis:
parent::__construct();
Código:
<_?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');
?>
Salida:
Bird hace sonido: Vocal
Constructor y objeto con herencia
En el siguiente programa, veremos que la forma en que los objetos llaman al constructor de la clase base es internamente creando un objeto. Como se usa la herencia, podemos usar parent :: __construct () para llamar al constructor de la clase base.
Código:
<_?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 '
Method : ' .$obj->BirdDoes();
?>
Salida:
En el constructor de clase base
Método: cielo
Conclusión - Objeto en PHP
Este artículo explica qué es un objeto en la programación orientada a objetos, cómo crear un objeto, su sintaxis, cómo usar un objeto en un programa dado. Además, cómo declarar y usar propiedades y métodos de un objeto en PHP, cómo usar constructores en PHP. Este artículo tiene programas que podrían ser útiles para resolver sus consultas y comprender bien el concepto.
Artículos recomendados
Esta es una guía de objetos en PHP. Aquí discutimos una introducción, propiedades, métodos y creación de objetos junto con constructor y objeto con herencia. También puede consultar los siguientes artículos para obtener más información:
- ¿Cómo conectar la base de datos a PHP?
- PHP Frameworks
- Comandos PHP
- Constantes PHP
- Anulación en PHP
- Función recursiva de PHP