البرمجة

استخدام عملية ?: في PHP

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

في هذه الحالة، ?: يعمل بشكل مشابه لعبارة if المختصرة، حيث يقوم بتقييم التعبير على الجانب الأيسر من ?:، وإذا كانت القيمة تقدم false أو null أو 0 أو ''، يتم تقييم التعبير على الجانب الأيمن من ?: واستخدام قيمته كقيمة العبارة الشرطية.

بمعنى آخر، السطر الذي وجدته $this->crawler() ?: $this->response->getContent() يعني “استدعاء الدالة crawler()، وإذا كانت القيمة التي تُعيدها غير صحيحة أو فارغة، استخدم محتوى الرد response->getContent() بدلاً من ذلك”.

المزيد من المعلومات

بالطبع! عملية ?: في PHP تُستخدم بشكل شائع كبديل مختصر لعبارة if، وهي تعتبر جزءًا من مفهوم تعبيرات الشرط المختصرة (Ternary Operators). هذه العملية تأخذ ثلاثة عناصر: التعبير الشرطي الذي يتم تقييمه، القيمة التي تُرجع إذا كان التعبير الشرطي صحيحًا، والقيمة التي تُرجع إذا كان التعبير الشرطي غير صحيح.

على سبيل المثال، يمكنك استخدام ?: لتحديد قيمة افتراضية إذا كانت قيمة معينة فارغة. على سبيل المثال، إذا كان لدينا متغير $name ونريد استخدام قيمة افتراضية “Guest” إذا كان $name فارغًا، يمكننا كتابة التعبير التالي:

php
$greeting = $name ?: "Guest";

هنا، إذا كانت قيمة $name غير فارغة (أي ليست null أو فارغة أو 0 أو false)، سيتم استخدام قيمة $name كقيمة للمتغير $greeting، وإذا كانت فارغة، ستستخدم القيمة “Guest” بدلاً من ذلك.

يمكنك أيضًا استخدام ?: في جمل echo لإظهار قيمة افتراضية إذا كانت القيمة فارغة، مثل هذا:

php
echo $name ?: "Guest";

إذا كانت قيمة $name غير فارغة، سيتم عرض قيمة $name، وإذا كانت فارغة، سيتم عرض “Guest” بدلاً من ذلك.

زر الذهاب إلى الأعلى