TurkMvc Hayvan diye modeliniz var; model demek Eloquent demek. Model ile ilgili dokümanların ismine bakarsanız görürsünüz:
https://laravel.com/docs/9.x/eloquent
Eloquent/model dediğimiz Laravel içindeki ORM. ORM nedir araştırabilirsiniz.
DB::table('hayvanlar')->orderBy('id')->get()
şeklinde yapılan işlem ise Query Builder. Aynısını Hayvan::orderBy('id')->get()
şeklinde yapabilmenizin sebebi Eloquent'in arka planda Query Builder kullanması.
Veritabanında bir sütunda birden fazla veriyi tutacaksanız json gibi bir veri tipine ihtiyacınız var çünkü PHP'deki gibi bir array tipi yok. O yüzden hayvanları tuttuğunuz tabloya jsonb tipinde resimler isimli alanı ekliyorsunuz:
$table->jsonb('images');
sonra Hayvan modeline casting ekliyorsunuz:
protected $casts = [
'images' => AsArrayObject::class,
];
Artık şöyle yapabilirsiniz:
$images = [
'1.jpg',
'2.jpg',
'3.jpg',
];
$hayvan = Hayvan::findOrFail($id);
$hayvan->images = $images;
$hayvan->save();
Elbette bu önerdiğimiz yol değil. Resimleri ayrı bir tabloda tutmanız lazım. Paket olarak da şunu öneriyorum:
https://spatie.be/docs/laravel-medialibrary/v10/introduction
ama paket kullanmadan önce mantığını anlamanız lazım.
Sizde gördüğüm eksiklik şu; dokümanları okumadan kendiniz bir şeyler yapmaya çalışıyorsunuz. Dokümanlara daha fazla zaman ayırmanız lazım.