تحديث Laravel 12.18.0
يونيو 17, 2025تحديث Laravel 12.18.0
صدر نسخه Laravel 12.18.0 فيها شوية ميزات جامدة كده:
- توابع لتشفير وفك تشفير النصوص باستخدام Stringable ديركت في chain strings.
- خيار --batched في
php artisan make:jobعلشان Job يبقي batchable بسهولة. - Attribute UsePolicy ممكن تحدد Policy واضحة على موديل معين.
- CTRL لاختصار استجابة HTTP Client لكل request.
🔐 1. تشفير وفك تشفير النصوص
بدل ما تستخدم:
// قبل
$encryptedToken = str('secret-api-token')
->pipe(fn(Stringable $str) => encrypt($str->value()))
->prepend('encrypted:')
->append(':end');
// بعد
$encryptedToken = str('secret-api-token')
->encrypt()
->prepend('encrypted:')
->append(':end');
بقى أسهل وأوضح بكتير باستخدام Stringable 😎
⚙️ 2. وظيفة batchable job
لو عايز تعمل job تشتغل Batchable، تبص كدا:
php artisan make:job ProcessPodcast --batched
الـ Class الجديد هيبقي:
namespace App\Jobs;
use Illuminate\Bus\Batchable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Queue\Queueable;
class ProcessPodcast implements ShouldQueue
{
use Batchable, Queueable;
public function handle(): void
{
if ($this->batch()->cancelled()) {
return;
}
// شغلك هنا...
}
}
🏷️ 3. Attribute UsePolicy
دلوقتي تقدر تحدد باسمه:
#[UsePolicy(PostPolicy::class)]
class Post extends Model {}
وده بدل الاعتماد كله على convention.
🌐 4. تحكم في الـ HTTP Client
تقدر تتحكم في طول الخطأ للـ truncate Exceptions بكل request:
Http::truncateExceptionsAt(240)->post(/* ... */)
دي كانت أبرز الميزات اللي اتقدمت في Laravel 12.18.0، ممكن تزور changelog لو حابب تعرف أكتر. 👌
المدونة
يوليو 07, 2025
Laravel 12.19: استخدام Attributes تنظّم Query Builder في Laravel 12.19، دلوقتي تقدر تستخدم Attribute اسمه #[UseEloquentBuilder] علشان تحدد Query Bu...
يونيو 26, 2025
مقارنة CSS: Cascade Layers و BEM و Utility Classes المقالة بتتكلّم عن ٣ طرق لإدارة الـ specificity في CSS – BEM والـ utility‑first classes وك...
يوليو 27, 2025
أدوات قوية تقدر تستخدمها لتطوير تطبيقات Laravel بشكل احترافي: Inertia.js v2، وView Creators، وحزمة Laravel HLS لبث الفيديوهات بأمان. ١. Inertia.j...
يوليو 24, 2025
🧠 يعني إيه Dynamic Import؟ الديناميـك إمبورت ببساطة هو إنك تحمّل ملف أو موديول JavaScript "وقت الحاجة بس" مش من أول الصفحة. الميزة دي بتقلل حجم ال...
يونيو 17, 2025
React Labs: View Transitions وActivity المنشور اتكتب يوم 23 أبريل 2025 من Ricky Hanlon. في React Labs النهارده بيقدّموا ميزتين تجريبيّتين مودرن...
يوليو 28, 2025
🚀 الجديد في React Native 0.80 بالتفصيل الإصدار React Native 0.80 يعتبر نقطة تحول حقيقية في عالم تطوير تطبيقات الموبايل باستخدام React Native. التح...