Criar matriz de objetos em PHP

Subodh Poudel 30 janeiro 2023
  1. Crie um array de objetos de classe em PHP
  2. Crie um array de objetos stdClass em PHP
  3. Crie um array de objetos usando a função array() em PHP
Criar matriz de objetos em PHP

Este artigo apresentará métodos para criar um array de objetos em PHP.

Crie um array de objetos de classe em PHP

Podemos usar a função array() para criar um array de objetos em PHP. A função tomará o objeto como argumento e criará um array desses objetos. Podemos criar objetos criando uma classe e definindo algumas propriedades da classe. As propriedades da classe terão alguns valores. Finalmente, as propriedades e valores formarão um par de valores-chave na matriz.

Por exemplo, crie uma classe Motorcycle. Crie duas propriedades públicas, $name e $type. Em seguida, crie um objeto $bike1 da classe Motorcycle usando a palavra-chave new. Preencha as propriedades do objeto com quaisquer valores adequados. Da mesma forma, crie outro objeto, $bike2 e preencha os valores de acordo. Em seguida, crie uma variável $bike e escreva a função array() nela com os dois objetos $bike1 e $bike2 como parâmetros. Finalmente, imprima a variável de array $bikes com a função print_r().

Assim, podemos criar um array de objetos, conforme mostrado na seção de saída. Criamos um array de objetos Motorcycle no exemplo abaixo. Podemos ver os índices 0 e 1 para cada objeto Motorcycle. As propriedades e valores de cada objeto são formados como um par de valores-chave, conforme declarado acima.

Código de exemplo:

<?php
class Motorcycle
{
    public $name;
    public $type;
}

$bike1 = new Motorcycle();
$bike1->name = 'Husqvarna';
$bike1->type = 'dirt';
$bike2 = new Motorcycle();
$bike2->name = 'Goldwing';
$bike2->type = 'touring';
$bikes = array($bike1, $bike2);
?>
<pre><?php print_r($bikes);?> </pre>

Produção:

Array
(
 [0] => Motorcycle Object
 (
 [name] => Husqvarna
 [type] => dirt
 )

 [1] => Motorcycle Object
 (
 [name] => Goldwing
 [type] => touring
 )
)

Crie um array de objetos stdClass em PHP

Podemos criar um array de objetos criando um objeto da stdClass em PHP. A stdClass é definida no conjunto padrão de funções em PHP. Não é uma classe base de objetos; em vez disso, é uma classe vazia que pode ser usada para typecast e definir propriedades dinâmicas. Podemos criar um objeto da stdClass, que é um array por natureza. Então, podemos atribuir as propriedades dinâmicas ao objeto com os índices.

Por exemplo, crie um array $bikes[] e torne-o um objeto de stdClass usando a palavra-chave new. Em seguida, dê o índice 0 ao array $bikes[] e atribua as propriedades name e tipo. Dê às propriedades alguns valores adequados de sua escolha. Repita o mesmo processo para o índice 1 na matriz $bikes[]. A seguir, imprima o array $bikes[].

O exemplo abaixo cria um array de objetos stdClass, conforme mostrado na seção de saída abaixo.

Código de exemplo:

<?php
$bikes[] = new stdClass;

$bikes[0]->name = 'Husqvarna';
$bikes[0]->type = 'dirt';

$bikes[1]->name = 'Goldwing';
$bikes[1]->type = 'touring';
?>
<pre><?php print_r($bikes);?> </pre>

Ouput:

Array
(
 [0] => stdClass Object
 (
 [name] => Husqvarna
 [type] => dirt
 )

 [1] => stdClass Object
 (
 [name] => Goldwing
 [type] => touring
 )

)

Crie um array de objetos usando a função array() em PHP

Este método é bastante semelhante ao primeiro método. Podemos criar um array de objetos criando objetos de uma classe. Aqui, primeiro criaremos um array usando a função array() e então preencheremos os objetos no array. No primeiro método, criamos objetos e os populamos no array usando a função array(). Usaremos o índice do array para definir os valores das propriedades.

Por exemplo, crie uma classe Motorcycle com propriedades como no primeiro método. Em seguida, crie um array com a variável $bikes usando a função array(). Deixe a matriz vazia. Em seguida, crie um objeto da classe do array $bike usando o índice 0. Defina também as propriedades e valores para o índice 0. Repita o mesmo processo para o índice 1. Finalmente, imprima o array usando a função print_r().

Código de exemplo:

<?php
class Motorcycle
{
    public $name;
    public $type;
}
$bikes = array();

$bikes[0] = new Motorcycle();
$bikes[0]->name = 'Husqvarna';
$bikes[0]->type = 'dirt';

$bikes[1] = new Motorcycle();
$bikes[1]->name = 'Goldwing';
$bikes[1]->type = 'touring';
?>
<pre><?php print_r($bikes);?> </pre>

Produção:

Array
(
 [0] => Motorcycle Object
 (
 [name] => Husqvarna
 [type] => dirt
 )

 [1] => Motorcycle Object
 (
 [name] => Goldwing
 [type] => touring
 )

)
Subodh Poudel avatar Subodh Poudel avatar

Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.

LinkedIn

Artigo relacionado - PHP Array

Artigo relacionado - PHP Object