זו דרך פשוטה להכניס תנאי if-else בצורה נוחה לקריאה בשורה אחת עם ההצבה, שזו פעולה פופולארית למדי... הרבה פעמים הגיוני לשים בקוד מבנה של "משתנה מסויים שווה X אם משהו, או Y אם משהו אחר"...
זה בעצם אומר - אם התנאי שבתוך הסוגריים מתקיים, אז הערך הוא מה שאחרי סימן השאלה. אם התנאי לא התקיים, אז הערך הוא מה שאחרי סימן הנקודותיים. בדוגמה הספציפית שלך, אם הערך של i$ (סביר להניח שזה מונה לולאה שפולטת אפשרויות בחירה של datepicker/selectbox של יום בחודש, נכון?) שווה ליום בחודש שהוא היום, אזי יש לסמן את היום הזה באמצעות תיוג האלמנט הזה ב CSS מסויים שנקרא selected... אחרת לא מדפיסים שם כלום, והעיצוב יהיה רגיל...
זה נקרא
Ternary Operator - מלשון 3, כי יש לו שלושה אלמנטים - התנאי ( () ), מה אם מתקיים ( ? ), ומה אם לא ( : ) ...
זה לא חייב להיות בהצבה, אגב. אתה יכול, למשל:
קוד PHP:
<?php
echo (1>2) ? "You know math" : "You do not know math";
?>
vs.
קוד PHP:
<?php
echo (3>2) ? "You know math" : "You do not know math";
?>
אגב, זה קיים בשפות רבות, לא רק ב PHP.