array_unique($collection, SORT_REGULAR);__toString() у класса DonateOperation. Как-нибудь так:public function __toString(): string
{
$attrs = (array)$this;
unset($attrs['id']);
return json_encode($attrs);
}array_unique будет работать применительно к исходной коллекции объектов.$collection = [...]; //исходная коллекция объектов
$found = []; //коллекция найденных массивов для быстрой проверки
$unique = []; //результирующая коллекция
foreach ($collection as $item) {
//преобразуем объект в массив без поля "id"
$array = (array)$item;
unset($array['id']);
//ищем полученный массив в массиве $found
if (!in_array($array, $found)) {
$found[] = $array;
$unique[] = $item;
}
} $data = [$name];
$response = $client->post($url, ['json' => $data]); User::where('id', $this->user->id)->get() - какое-то масло масляное. Переменная $this->user уже содержит пользователя. Зачем его снова загружать из БД? Да ещё в виде коллекции. Invoice::where('id', $this->user->id)->get() - у инвойсов ID совпадают с пользователями? Бред какой-то. Наверное, там должна быть колонка user_id$pdf = PDF::loadView('pdf.invoice', ['user' => $this->user, 'invoice' => Invoice::where('user_id', $this->user->id)->first()]);User ID: {{ $user->id }}<br>
Invoice {{ $invoice ? $invoice->id : 'n/a' }}