ماذا يعني هذا بناء الجملة (صفحة = $ صفحة؟ $: "الافتراضي") في PHP؟
-
21-09-2019 - |
سؤال
أنا جديد على PHP. جئت عبر هذا الجملة في وورد. ماذا يفعل السطر الأخير من هذا الرمز؟
$page = $_SERVER['REQUEST_URI'];
$page = str_replace("/","",$page);
$page = str_replace(".php","",$page);
$page = $page ? $page : 'default'
المحلول
إنه مثال على المشغل الشرطي في PHP.
إنها النسخة المختصرة من:
if (something is true ) {
Do this
}
else {
Do that
}
يرى باستخدام IF/else Ternary Operators http://php.net/manual/en/language.operators.comparison.php.
نصائح أخرى
انه العملية الثلاثية وهو ليس PHP أو WordPress محددة ، فهو موجود في معظم langauges.
(condition) ? true_case : false_case
لذلك في هذه الحالة ، ستكون قيمة صفحة $ "افتراضية" ، عندما تكون صفحة $ مشابهة لخطأ - وإلا فإنها ستبقى دون تغيير.
هذا يعني أنه إذا لم يكن لصفحة $ قيمة (أو أنها صفر) ، فقم بتعيينها على "افتراضي".
هذا يعني أنه إذا لم يكن متغير صفحة $ فارغًا ، فقم بتعيين متغير صفحة $ على السطر الأخير الذي يتغير أو تعيينه على اسم صفحة "افتراضي".
المزيد من بناء الجملة المطول للخط الأخير هو:
if ($page)
{
$page = $page;
}
else
{
$page = 'default';
}
هذا ما يسمى المشغل الشرطي. يعمل مثل بيان if-else ، لذلك
$page = $page ? $page : 'default';
يفعل نفس الشيء
if($page)
{
$page = $page;
}
else
{
$page = 'default';
}