Вы пытаетесь использовать троичный оператор, но вместо :
.
вы используете
||
.
$session_slct->f("theMonth") == '01' ?'January':
$session_slct->f("theMonth") == '02' /* ...
Но вам лучше использовать переключатель ... чехол.
$month = 'Invalid Month!';
switch( $session_slct->f("theMonth") )
{
case '01':
$month = 'January';
break;
case '02':
$month = 'February';
break;
/* ... */
}
Проблема использования троичной системы таким, какой вы есть, заключается в том, что вы звоните $session_slct->f
двенадцать раз подряд. Это намного дороже, чем switch, который вызывает его один раз или, если вы настаиваете на троичном, по крайней мере, сначала кешируйте переменную:
$month = $session_slct->f("theMonth");
echo $month == '01' ?'January':
$month == '02' ?'February':// yada yada yada/
Конечно, всегда есть решения, такие как:
echo date( 'F', strtotime( '01-' . $session_slct->f("theMonth") ) );