Classes e Objetos PHP

Neste post, exploraremos classes e objetos PHP e examinaremos como eles podem ser criados e usados ​​no programa.

Abordaremos vários tópicos, incluindo propriedades de classe, métodos e também como acessar membros de classe com a ajuda do operador de objeto.

A programação orientada a objetos refere-se ao conceito de que as classes são projetos para a criação de objetos e os objetos são instâncias das classes às quais pertencem.

PHP é uma linguagem orientada a objetos, que permite aos desenvolvedores criar classes e objetos para poder estruturar e modularizar seu código de forma mais eficaz.



Caso OOP

Vamos supor que temos uma classe chamada Aluno em nosso aplicativo.

Existem muitas propriedades que podem ser atribuídas a um aluno, como seu nome, idade, sexo, etc. Para manter os valores de propriedades como name , age e gender , podemos definir variáveis ​​como $name , $idade e $gênero .

Cada classe herda suas propriedades e comportamentos quando é criada, mas cada objeto terá valores diferentes para as propriedades quando forem criados (por exemplo, std1 , std2 , etc herdarão propriedades e comportamentos da classe).


Classes PHP – Crie uma

A palavra-chave class é usada quando queremos definir uma classe. Em seguida, o nome da classe é inserido, seguido por um par de chaves ({}) para indicar uma classe.

Essas chaves contêm todas as propriedades e métodos que pertencem à classe:

Sintaxe

<?php
class Student {
// code goes here…
}
?>

Abaixo está uma declaração de uma classe chamada Student com duas propriedades ($name e $age) e dois métodos setName() e getName() para definir e recuperar os valores de $name respectivamente:

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
class Student
{
// Properties
public $name;
public $age;
// Methods
function setName($name)
{
$this->name = $name;
}
function getName()
{
return $this->name;
}
}
?>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Lembre-se : as variáveis ​​são chamadas de propriedades e as funções são chamadas de métodos dentro de uma classe!

Objetos PHP – Crie um

Os objetos são a espinha dorsal de qualquer classe e as classes não são nada sem eles!

Existem vários objetos que podem ser criados a partir de uma única classe.

A classe define todas as propriedades e métodos que serão incluídos no objeto, mas os valores dessas propriedades serão diferentes de objeto para objeto.

Com a palavra-chave new, objetos de uma classe podem ser criados.

O exemplo a seguir mostra $std1 e $std2 como instâncias da classe Aluno , respectivamente:

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php
class Student
{
// Properties
public $name;
public $age;
// Methods
function setName($name)
{
$this->name = $name;
}
function getName()
{
return $this->name;
}
}
$std1 = new Student();
$std2 = new Student();
$std1->setName('John');
$std2->setName('Alex');
echo $std1->getName();
echo "<br>";
echo $std2->getName();
?>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Adicionamos dois novos métodos à classe Student, para configurar e recuperar a propriedade $age da classe Student , no exemplo abaixo:

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php
class Student
{
// Properties
public $name;
public $age;
// Methods
//set and get name
function setName($name)
{
$this->name = $name;
}
function getName()
{
return $this->name;
}
//set and get age
function setAge($age)
{
$this->color = $age;
}
function getAge()
{
return $this->color;
}
}
$std1 = new Student();
$std1->setName('John');
$std1->setAge(22);
echo "Name: " . $std1->getName();
echo "<br>";
echo "Age: " . $std1->getAge();
?>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

PHP $esta palavra-chave

Em um método, $this especifica qual objeto está sendo referenciado atualmente e só pode ser usado dentro desse método.

Vejamos um exemplo de como isso pode ser feito:

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
class Student
{
public $name;
}
$std1 = new Student();
?>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

A questão agora é, onde o valor da propriedade $name pode ser alterado? Pode ser feito de duas maneiras diferentes:

1. Adicione o seguinte à sua classe (adicionando um método setName() a ela e usando $this):

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
class Student
{
public $name;
function setName($name)
{
$this->name = $name;
}
}
$std1 = new Student();
$std1->setName("John");
?>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Exemplo de Explicação
No exemplo acima, uma classe chamada Student  com uma única propriedade chamada $name e um método chamado setName() que é usado para definir o valor da propriedade $name .
Quando o código é executado, um objeto da classe “Student” é criado usando a palavra-chave new  e atribuído à variável $std1 .
O método setName() é chamado no objeto, passando o valor “ John ” como parâmetro. Isso define o valor da propriedade $name do objeto como “John”.
Na programação orientada a objetos, uma classe é um modelo para a criação de objetos que possuem propriedades e comportamentos semelhantes . Neste caso, a classe “Aluno” representa um aluno e possui uma propriedade para armazenar o nome do aluno e um método para definir o nome.
Depois que um objeto da classe é criado, as propriedades e métodos da classe podem ser acessados ​​usando a variável de objeto. Nesse caso, o método setName() é chamado no objeto $std1 para definir a propriedade name como “John”.
2. Alterando o valor da propriedade diretamente fora da classe (sem alterar na classe):

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
class Student
{
public $name;
}
$std1 = new Student();
$std1->name = "John";
?>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

PHP instância de

Se você quiser saber se um objeto pertence a uma determinada classe, você pode usar a palavra-chave instanceof :

Example: 

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
class Student{
// code goes here
}
$std1 = new Student();
var_dump($std1 instanceof Student);
?>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Classes PHP e benefícios dos objetos

Aqui estão alguns benefícios do uso de classes e objetos em PHP:

  • Php Classes e objetos permitem que você reutilize o código que você escreveu para um projeto em outro projeto. Você pode simplesmente criar um objeto de uma classe e usar seus métodos em seu código.
  • Classes e objetos PHP permitem encapsular dados e comportamento em uma única unidade, o que torna seu código mais organizado e fácil de entender.
  • Ao dividir seu código em classes e objetos PHP menores e mais gerenciáveis, você pode tornar seu código mais modular e fácil de manter.
  • Classes e objetos PHP permitem que você abstraia os detalhes de como algo funciona e se concentre no que ele faz. Isso torna seu código mais flexível e adaptável aos requisitos em constante mudança.
  • A herança permite criar uma hierarquia de classes, onde cada classe herda as propriedades e métodos de sua classe pai. Isso pode ajudá-lo a criar classes mais especializadas adaptadas a tarefas específicas.
Nós valorizamos o seu feedback.
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0

Assine a nossa newsletter
Digite seu e-mail para receber um resumo semanal de nossos melhores posts. Saber mais!
ícone