К Передача данных в представление Вы можете сделать оба:
return view('greetings', ['admin' => $user, 'store' => $store]);
или
return view('greetings')->with('admin', $user)->with('store', $store);
// sugared
return view('greetings')->withAdmin($user)->withStore($store);
Используя эти два метода, вы по-прежнему получаете свой объект в виде под именами переменных, которые вы определяете.
С другой стороны, когда вы делаете compact()
, он создает ассоциативный массив объекта / коллекции, в который вы передаете его. Он также позволяет добавлять туда несколько переменных.