محتويات الدورة

PHP / متقدم: النماذج الموثوقة وأدلة التشغيل / الدرس 18

إصدارات التشغيل وحدود الميزات والتوافق

اقرأ الدعم والترحيل كأدلة مصانة. قارن ميزات 8.4 و8.5 الموسومة دون رفع أساس صياغة 8.3 بصمت.

وقت القراءة التقريبي: 3 دقيقةتاريخ مراجعة المحتوى
في هذه الصفحة

أهداف الدرس

  • تمييز توافق الصياغة والدعم وإعداد النشر.
  • شرح حدود ميزات 8.4 و8.5 صراحة.
  • تصميم أدلة توافق وتسليم مركزة.

ليس أساس التعليم ادعاء دعم دائماً

تستخدم الدورة صياغة 8.3 إلا المثال الموسوم هنا، واختبرت البرامج على CLI 8.5.12 لا مصفوفة قديمة. عند مراجعة 2026-10-25 يدرج الجدول 8.3 بدعم أمني فقط حتى 2027-12-31، ويلزم إعادة التحقق للنشر. تختلف الصياغة والامتداد والاعتماد وحزم النظام والصيانة؛ فلا تستنتج خطة ترقية من أساس تعليم.

خطافات خصائص 8.4 حد صياغة جديد

قدمت 8.4 خطافات وظهوراً غير متناظر. تضيف الخطافات منطق قراءة وكتابة فتصير الخاصية أكثر من حقل. يطبّع المثال العنوان بخطاف كتابة موسوم 8.4 فأحدث ولا يوضع بملف يحتاج 8.3 تحليله. لا تحمي if صياغة مجهولة. استخدم الحديث لوضوح العقد مع تحقق المجال لا صحة تلقائية.

php PHP 8.4 فأحدث: مثال خطاف موسوم
<?php
declare(strict_types=1);
final class CourseTitle {
    public string $value { set => trim($value); }
    public function __construct(string $value) { $this->value = $value; }
}
echo (new CourseTitle("  PHP  "))->value, PHP_EOL;
الناتج المتوقع
PHP

يتحقق منه CLI 8.5 المثبت وهو خارج أساس 8.3 الافتراضي.

أنابيب 8.5 تركب الاستدعاءات لا ضمانات النشر

قدمت 8.5 عامل الأنبوب لتمرير القيمة عبر تحويلات قابلة للاستدعاء. قد يوضح الخط ولا ينشئ عملاً غير متزامن أو تحققاً أو يزيل الخطأ. يطبق المثال دالتي نص وينتج المعروف، ويتطلب 8.5 المختبرة فقط. تخدم الدعوة المتداخلة الأقدم. قرر قيمة رفع العقد قبل إدخاله بمكتبة مشتركة.

php PHP 8.5 فأحدث: خط استدعاء منتهٍ
<?php
declare(strict_types=1);
$title = "  php  " |> trim(...) |> strtoupper(...);
echo $title, PHP_EOL;
الناتج المتوقع
PHP

تزيل trim المسافات وتحول strtoupper إلى PHP دون تزامن أو خدمة أو حزمة.

قراءة عدم التوافق والتقادم لا الميزات فقط

تشمل المراجعة عدم التوافق والتقادم والامتداد والاعتماد. قد تحلل الشيفرة ثم يتغير التحذير أو تفشل الحدود. قارن إعداد CLI والويب لاختلاف الثنائي وini والامتداد. لا تخفِ التقادم لتعلن الاكتمال؛ صنفه وعين إصلاحاً. استخدم تثبيتاً مقفلاً نظيفاً وافحص البيئة دون أسرار، واعزل تجربة اللغة من ترقية التطبيق.

الختام بحجة تسليم محدودة

يحدد تقرير التوافق البيئة والامتدادات والاعتماد والمداخل والسلوك. يشمل الصياغة والأمثلة والأخطاء والقاعدة والجلسة وHTTP عند الحاجة. أعد الدليل فقط بصحة افتراضه. لا يثبت CLI أحدث كل المسارات أو الفرع القديم. وضح الفجوة واختر فحصاً يغير القرار. تأتي الصيانة من العقود والآثار المملوكة والدليل لا رقم أو شارة إطار.

الأخطاء الشائعة وإصلاحها

خلط الحد الأدنى بالدعم الحالي

لماذا يحدث؟
استبدال قرار الصيانة بسياسة صياغة.
كيف تصلحه؟
فحص الجدول الرسمي لتاريخ النشر.
كيف تتجنب تكراره؟
توثيق تاريخ المراجعة وسياسة التشغيل منفصلين.

إخفاء صياغة حديثة بشرط تشغيل

لماذا يحدث؟
وقوع التحليل قبل حماية الفرع.
كيف تصلحه؟
فصل الملفات أو رفع الحد الأدنى عمداً.
كيف تتجنب تكراره؟
فحص كل بيئة يدعى دعمها فعلياً.

مراجعة الميزات فقط بالترقية

لماذا يحدث؟
إغفال التقادم وعدم التوافق.
كيف تصلحه؟
مراجعة دليل الترحيل ومتطلبات الاعتماد.
كيف تتجنب تكراره؟
اختبار الخطأ والحدود مع الصياغة.

اختبر فهمك

1. هل تحمي if لإصدار 80400 مثال الخطاف عند تحميله بـ8.3؟

اعرض الحل المشروح

لا؛ يحلل القديم الملف قبل الشرط. اعزل الصياغة بملف لا يقرأه القديم أو ارفع الحد. لا تدّعِ توافق ملف الخطاف مع 8.3.

2. ماذا يصاحب تقرير نجاح الأمثلة على CLI 8.5.12؟

اعرض الحل المشروح

حدّد البيئة والامتدادات وأمثلة 8.4 و8.5، وبيّن عدم اختبار القديم وHTTP والكوكي بذلك التشغيل. أرفق مقارنة المخرجات وSQLite المضبوطة لا اختبار تطبيق أو مصفوفة كاملة.

أهم ما تعلمته

  • تحتاج الصياغة والدعم حدوداً صريحة مراجعة.
  • أبلغ عن البيئات والسلوك المختبر فعلياً فقط.

المراجع الرسمية