Laravel refresh() ile fresh() farkı

refresh() metodu veritabanından tüm yeni dataları ve ilişkileri alıp oluşturulmuş modele aktarır.

fresh() metodu oluşturulan model etkilenmeden yeni bir model örneği oluşturur. İlişkileri tekrar yüklemez. $model = $model->fresh() şeklinde yeni model örneği çağırabilirsin.

        $xposts = Xpost::where('user_id', '2')->first();
        echo 'userid:'.$xposts->user_id; // Çıktı : 2
        echo '<hr>';
        $xposts->user_id = 555; //user_id ye 555 değerini veriyoruz.
        $xposts->refresh(); // modele refresh metodunu uyguluyoruz.
        echo 'userid:'.$xposts->user_id; // Çıktı : 2 Geliyor
        echo '<hr>';
        $xposts->user_id = 555; //user_id ye tekrar 555 değerini veriyoruz.
        $xposts->fresh(); //modele fresh metodunu uyguluyoruz.
        echo 'userid:'.$xposts->user_id; // Çıktı : 555 geliyor

Detaylı Bilgi İçin Laravel Dökümanları

Yenilenen Modeller – Refreshing Models