Avatar ·

Cómo iterar un objeto PHP con claves dinámicas (nombres de propiedades)

Hola a todos. Soy nuevo en PHP y me encontré con un problema al trabajar con datos JSON. Después de decodificar JSON con `json_decode()` obtengo un objeto stdClass cuyas propiedades (claves) son desconocidas de antemano. Por ejemplo, recibo datos de productos desde una API externa, y los nombres de los campos pueden cambiar (precio, cantidad, descripción — pero la composición exacta de los campos es desconocida). Necesito recorrer todas las propiedades de este objeto y mostrarlas en pantalla. Aquí hay un ejemplo de código que no me funciona: ```php $json = '{"item1": {"name": "Товар А", "price": 150}, "item2": {"name": "Товар Б", "price": 250}}'; $data = json_decode($json); // Intento iterar como array — error foreach ($data as $key => $value) { echo $key . ': ' . $value . '
'; } ``` Este código produce un error: "Invalid argument supplied for foreach()". Entiendo que `$data` es un objeto, no un array. Pero ¿cómo puedo iterar todas sus propiedades si no conozco sus nombres? Intenté usar `$data->$key` — tampoco funcionó.