Avatar ·

Conversión de un objeto PHP a un array asociativo

¡Hola a todos! Acabo de empezar a aprender PHP y me encontré con un problema al trabajar con objetos y arrays.

Tengo una clase User con varias propiedades. Creo una instancia de esta clase, la lleno con datos de la base de datos, y luego necesito pasar este objeto a una función que espera un array asociativo como entrada. La función procesa los datos y devuelve JSON para el frontend.

Aquí hay un ejemplo simplificado de mi 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, 'Iván Petrov', 'ivan@example.com', true);

// Función que espera un array
function prepareForJson(array $data) {
    // ... algún procesamiento
    return json_encode($data);