¿Cómo optimizar el código en Laravel?

Utilizo el siguiente código para obtener datos de dos tablas relacionadas:

$arr = [];
$objectModel = new ProductCategory();
$objectModel::$language = 2;

$subcategories = $objectModel::with("translate", "parent")->get();

foreach($subcategories as $key => $item) {
    $arr[$item->translate()->first()->objectId] = $item->translate()->first()->name;
}

array_unshift($arr, 'Select category');
return $arr;

En resultado, esta parte del código obtengo una matriz conkey => value para insertar esto en la lista de selección en la plantilla Blade.

Pero deseo escapar de un bucle:

foreach($subcategories as $key => $item) {
    $arr[$item->translate()->first()->objectId] = $item->translate()->first()->name;
}

Y obtenga una colección clara de la solicitud. ¿Cómo puedo hacerlo?

Respuestas a la pregunta(1)

Su respuesta a la pregunta