Laravel Türkiye Discord Kanalı Forumda kod paylaşılırken dikkat edilmesi gerekenler!Birlikte proje geliştirmek ister misiniz?

https://ibb.co/VSPYmyN

Böyle bir kod bloğum var bir hata oluştuğunda catch içindeki oalayları yapıp foreachın durmasını istemiyorum .
Kendim eğer $enpoint == 'SalesOrderLines' olduğundaki durumu değiştirip hata atmasını sağladım foreach duruyor .
Nasıl sağlayabilirm istediğim şekilde ?

  • nuri60 500 dediğiniz http hatası. Sunucuda php işlemini kesen ya da tüm çalışmayı kesen bir hata oluştuğunda bunu sunucu size 5xx olarak verir.

    PHP'de Throwable arayüzü var, bu arayüzü gerçekleyen hataları sadece yakalayabilirsiniz. Bu da PHP 8+ için geçerli. Örneğin sizin bu yazdığınız kodda $todo = null; yazan satırdaki hatayı PHP 7.4 ile yakalayamazsınız ama PHP 8+ ile yakalayabilirsiniz. Syntax hatası gibi PHP hatalarını ise hiçbir sürümde yakalayamazsınız.

    PHP 8+ kullanıyorsanız şöyle yapmanız lazım:

    try {
    
    } catch (Throwable $exception) {
    
    }

$todo->updateStataus(Todo::FAIL) işleminde hata fırlatıyor. Yoksa zaten devam eder.
Ayrıca bilerek catch içine sokmaya çalışmak yerine continueile döngüye devam ettirebilirsin.

    fthyuksel Hata fırlattığı noktayı biliyorum ben koydum oraya test amaçlı ...
    Dediğinişz gibi continue yemiyor .

      mgsmus abi bu php hatası sadece 500 hatalarını mı kapsıyor mesela ben enum bir değeri uygun olmayan bir değer ile update ya da insert etmeye kalktığımda istediğim oluyor dalar böyle bir şey yaptığımda olmuyor .

        nuri60 500 dediğiniz http hatası. Sunucuda php işlemini kesen ya da tüm çalışmayı kesen bir hata oluştuğunda bunu sunucu size 5xx olarak verir.

        PHP'de Throwable arayüzü var, bu arayüzü gerçekleyen hataları sadece yakalayabilirsiniz. Bu da PHP 8+ için geçerli. Örneğin sizin bu yazdığınız kodda $todo = null; yazan satırdaki hatayı PHP 7.4 ile yakalayamazsınız ama PHP 8+ ile yakalayabilirsiniz. Syntax hatası gibi PHP hatalarını ise hiçbir sürümde yakalayamazsınız.

        PHP 8+ kullanıyorsanız şöyle yapmanız lazım:

        try {
        
        } catch (Throwable $exception) {
        
        }

        Php 8 kullanıyorum abi Laravel 9 la birlikte sanırım yakalamayacağım plus olmasaydı iyi idi 😀Çok teşekkür ederim açıklama için …