Очень хорошая статья про очень плохой язык -
http://habrahabr.ru/post/142140/ В PHP много проблем. Самая большая - каждый разработчик делает новые фичи без согласования с общим дизайном. Причем, этим разработчикам явно не хватает опыта. Отсюда отсутствие целостности в дизайне и именах функций. Если надо добавить новую функцию, то иногда для этого меняется парсер (как с empty).
Но вот следующее поведение меня убивает. Что выведет этот код:
$arg = 'T';
$vehicle = ( ( $arg == 'B' ) ? 'bus' :
( $arg == 'A' ) ? 'airplane' :
( $arg == 'T' ) ? 'train' :
( $arg == 'C' ) ? 'car' :
( $arg == 'H' ) ? 'horse' :
'feet' );
echo $vehicle;
выведет horse
Кроме того, он медленный и неэффективный. Чтобы запомнить один int PHP тратит 77 байт.