Ваш код использует asset()
для генерации $url
:
http://myapp.test/uploads/products/83QhiRFarGpV.jpeg
Функция filesize()
работает с локальными файлами, а не с URL-адресами.
filesize($main_image->image_path)
должно работать, так как вы используете его в строке выше для получения типа файла.
Возможно, у вас также есть другая проблема с
"file" => $main_image->image_path,
"local" => $main_image->image_path,
Где вы, вероятно, хотите, чтобы файл вместо $url
.