استفاده از عملگر سهتایی در PHP
دارالترجمه رسمی
دارالترجمه رسمی پارسیس شامل خدمات ترجمه رسمی و تخصصی در بیش از 60 زبان زنده دنیا
دارالترجمه رسمی پارسیس شامل خدمات ترجمه رسمی و تخصصی در بیش از 60 زبان زنده دنیا
افزونه های سئو وردپرس
بهترین افزونه های سئو وردپرس به صورت کاملا فارسی
بهترین افزونه های سئو وردپرس به صورت کاملا فارسی
افزونه فرم ساز آسان
فرم ساز آسان اولین فرم ساز کاملا فارسی وردپرس
فرم ساز آسان اولین فرم ساز کاملا فارسی وردپرس
خرید ورق گالوانیزه رنگی
خرید انواع ورق گالوانیزه رنگی با بهترین قیمت
خرید انواع ورق گالوانیزه رنگی با بهترین قیمت
کارگاه رویه کوبی در تهران
بهترین کارگاه رویه کوبی و تعمیر مبل راحتی و استیل در تهران با قیمت و کیفیت عالی
خودتان را اینجا معرفی کنید
بهترین کارگاه رویه کوبی و تعمیر مبل راحتی و استیل در تهران با قیمت و کیفیت عالی
در این مطلب یکی از عملگرهای پرکاربرد به نام Ternary Operator قرار هستش که معرفی بشه که البته همانطوری که گفته شد تقریبا در تمامی زبانهای برنامهنویسی وجود داره اما در این مطلب برای زبان برنامهنویسی PHP معرفی خواهد شد.
عملگر سهتایی چیست ؟
عملگر سهتایی یا Ternary Operator یک عملگر شرطی است، یعنی اینکه برای بررسی True یا False بودن یک عبارت شرطی استفاده می شود.در زمان برنامه نویسی خیلی وقتها ما نیاز داریم بین دو جریان مختلف برنامه یک کار را انجام دهیم. منظورم اینه که مثلا قرار است اگر کاربر لاگین بود متن شماره یک را echo کنیم و اگر کاربر لاگین نبود متن شماره دو را echo کنیم. در این بخش از برنامه ما در هر صورت یک متن echo خواهد شد، فقط بر اساس شرطی که داریم متن تغییر خواهد کرد.
برنامه ای که برای این بخش می نویسیم در حالت عادی بدین شکل است :
<?php
if ($user_is_login === true) {
echo "Hello Admin";
}else{
echo "Please login";
}
?>
در کد بالا اگر مقدار متغیر $user_is_login
برابر و همسان با true باشد مقدار Hello Admin و اگر چیزی غیر از true باشد مقدار Please Login بر روی صفحه نمایش داده خواهد شد.حالا با استفاده از Ternary Operator میتوانیم کد بالا را بصورت زیر خلاصه کنیم:
<?php
echo ($user_is_login === true) ? "Hello Admin" : "Please Login";
?>
در این کد علامت ? نشان دهنده حالت true شرط و : نشان دهنده حالت falseشرط است.
کاری که ما در کد قبلی در ۵ خط انجام دادیم، با استفاده از عملگر سهتایی در یک خط انجام شد.
از نسخه php 5.3 به بالا میتوان عملگر را بصورت ?: جهت استفاده از مقدار متغیر به عنوان پیش فرض نیز نوشت.
کد زیر را ببینید:
<?php
$color = "red";
echo '<a href="http://www.majidonline.com" style="color: '. ( $color ?: 'blue' ) .'">MajidOnline</a>';
?>
در کد بالا اگر مقدار $color
از قبل تعریف شده باشد مقداری که داخل $color
وجود دارد چاپ خواهد شد و اگر متغیر خالی باشد مقدار blue چاپ خواهد شد.از Ternary Operator معمولا برای همین یک حالت (یعنی فقط بررسی true و false بودن شرط) استفاده میشه، گرچه ما میتونیم یک کد کثیف بنویسیم و اونو گسترش بدیم.
کدهای زیر رو ببینید، هر دو یک کار را انجام می دهند. اما کدارم تمیزتر و خوانا تر است ؟
<?php
if ($age > 0 && $age <= 3){
echo "نوزاد";
}else if ($age > 3 && $age <= 7){
echo "خردسال";
}else if ($age > 7 && $age <= 12){
echo "کودک";
}else if ($age > 12 && $age <= 15){
echo "نوجوان";
}else if ($age > 15) {
echo "بزرگسال";
}else{
echo "سن وارد شده مجاز نمیباشد";
}
echo ($age > 0 && $age <= 3 ? "نوزاد" : ($age > 3 && $age <= 7 ? "خردسال" : ($age > 7 && $age <= 12 ? "کودک" : ($age > 12 && $age <= 15 ? "نوجوان" : ()$age > 15 ? "بزرگسال" : "سن وارد شده مجاز نمیباشد"))));
?>
نتیجه گیری
استفاده از Ternary Operator کدنویسی ما را کوتاه و تمیز میکند البته به شرطی که به شکل درست از آن استفاده شود.این مطلب خیلی مطلب ابتدایی هستش که خیلی از برنامه نویسان PHP مطلع هستند و در کارهاشون استفاده میکنند، اما این موضوع میتونه برای کسانی که تازه php رو یاد گرفتن و یا اینکه در حال یادگیری PHP هستند کاربرد داشته باشه.
نظرات و سوالات کاربران