"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > أهم ميزات PHP التي يمكنك استخدامها في 4

أهم ميزات PHP التي يمكنك استخدامها في 4

تم النشر بتاريخ 2024-11-09
تصفح:981

Top PHP Features You Can Use in 4

مرحبًا لمحبي PHP! تسلط هذه المقالة الضوء على بعض الميزات الجديدة الممتازة للغة البرمجة النصية المفضلة لدينا. سواء كنت محترفًا متمرسًا أو بدأت للتو، فهذه ستجعل حياتك البرمجية أسهل وأكثر متعة. دعنا نتعمق في أهم ميزات PHP التي يمكنك استخدامها الآن!

1. خصائص للقراءة فقط

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

class User {
    public readonly string $username;

    public function __construct(string $username) {
        $this->username = $username;
    }
}

2. التعدادات

أصبحت التعدادات الآن شيئًا موجودًا في لغة PHP! إنها تتيح لك تحديد مجموعة من القيم المسماة، وهي مثالية لأشياء مثل الحالات أو الفئات.

enum Status {
    case PENDING;
    case ACTIVE;
    case INACTIVE;
}

$status = Status::ACTIVE;

3. مطابقة التعبيرات

يعد تعبير المطابقة بديلاً أكثر مرونة لعبارات التبديل. إنها تتيح لك إرجاع القيم مباشرة من كل حالة.

$status = 'active';

$message = match ($status) {
    'active' => 'The user is active.',
    'inactive' => 'The user is inactive.',
    'pending' => 'The user is pending.',
    default => 'Unknown status.',
};

4. ترويج ملكية البناء

توفير الوقت عن طريق تحديد وتهيئة الخصائص مباشرة في المُنشئ.

class Point {
    public function __construct(
        public float $x,
        public float $y
    ) {}
}

$point = new Point(1.5, 2.5);

5. الوسائط المسماة

تجعل الوسائط المُسماة التعليمات البرمجية الخاصة بك أكثر قابلية للقراءة من خلال السماح لك بتمرير القيم إلى دالة حسب الاسم بدلاً من الموضع.

function createUser(string $username, bool $isAdmin = false) {
    // Your code here
}

createUser(username: 'john_doe', isAdmin: true);

6. مشغل Nullsafe

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

$user = getUser();
$profile = $user?->getProfile()?->getBio();

7. أنواع الاتحاد

أصبحت تلميحات النوع أكثر مرونة مع الأنواع الموحدة، مما يسمح لك بتحديد أنواع متعددة لمعلمة أو قيمة إرجاع.

function processNumber(int|float $number): int|float {
    return $number * 2;
}

8. تفريغ المصفوفة باستخدام مفاتيح السلسلة

تفريغ المصفوفات باستخدام مفاتيح السلسلة، مما يسهل دمج المصفوفات.

$array1 = ['a' => 1, 'b' => 2];
$array2 = ['c' => 3, ...$array1];

print_r($array2);
// Output: ['c' => 3, 'a' => 1, 'b' => 2]

9.JSON_THROW_ON_ERROR

باستخدام PHP 8.3، يمكنك تمكين json.exceptions لطرح JsonException افتراضيًا على أخطاء JSON.

ini_set('json.exceptions', '1');

try {
    $data = json_decode('{"invalidJson":}', true);
} catch (JsonException $e) {
    echo 'JSON Error: ' . $e->getMessage();
}

10. تجميع JIT

أصبح التجميع في الوقت المناسب (JIT) الآن جزءًا من PHP، مما يجعل البرامج النصية الخاصة بك تعمل بشكل أسرع من خلال تجميع أجزاء من التعليمات البرمجية في وقت التشغيل.

التفاف

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

تمت مشاركة كل ما سبق سابقًا على تويتر الخاص بنا، واحدًا تلو الآخر. تابعونا على تويتر. سوف ❤️ ذلك. يمكنك أيضًا الاطلاع على سلسلة Laravel Advanced المجانية للتعرف على ميزات Laravel الشائعة. استمر في الاستكشاف واستمر في البرمجة. حتى المرة القادمة، برمجة سعيدة! ?

بيان الافراج يتم استنساخ هذه المقالة على: https://dev.to/karandatwani92/top-10-php-features-you-can-use-in-2024-3eg7؟1 إذا كان هناك أي انتهاك ، فيرجى الاتصال بـ [email protected] لحذفها.
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3