Avatar ·

Conversão de objeto PHP em array associativo

Olá a todos! Comecei a estudar PHP e enfrentei um problema ao trabalhar com objetos e arrays.

Tenho uma classe User com várias propriedades. Crio uma instância dessa classe, preencho com dados do banco de dados e depois preciso passar esse objeto para uma função que espera um array associativo como entrada. A função processa os dados e retorna JSON para o frontend.

Aqui está um exemplo simplificado do meu código:

<?php
class User {
    public $id;
    public $name;
    public $email;
    public $isActive;
    
    public function __construct($id, $name, $email, $isActive = true) {
        $this->id = $id;
        $this->name = $name;
        $this->email = $email;
        $this->isActive = $isActive;
    }
}

$user = new User(1, 'Иван Петров', 'ivan@example.com', true);

// Função que espera um array
function prepareForJson(array $data) {
    // ... algum processamento
    return json_encode($data);