¿Cómo escribo dinámicamente un nombre de propiedad de objeto PHP?

Tengo propiedades de objeto en mi código que se parecen a esto:

$obj ->field_name_cars[0];
$obj ->field_name_clothes[0];

El problema es que tengo cientos de nombres de campo y necesito escribir el nombre de la propiedad dinámicamente. De lo contrario, el nombre del objeto y las claves de la propiedad siempre serán los mismos. Así que intenté:

$obj -> $field[0];

Esperando que el nombre de la propiedad sea cambiado dinámicamente y acceda a los valores correctos. Pero, sigo obteniendo el campo 'propiedad indefinida $ en el campo stdClass :: $;

Más o menos estoy intentando escribir dinámicamente el php antes de que se ejecute para que pueda generar los valores adecuados. ¿Pensamientos sobre cómo abordar esto?