В основном, если defined("YII_DEBUG")
оценивается как ложное, оно будет определять его.Вроде как:
mysql_connect() or die("DIE!!!!!");
Это фактический синтаксис PHP, просто обычно не используется.Это позволяет вам не писать:
if(!defined("YII_DEBUG"))
{
define("YII_DEBUG", true);
}
или даже короче
if(!defined("YII_DEBUG"))
define("YII_DEBUG", true);
Я предполагаю, что они использовали его, чтобы вообще избавиться от оператора if.Второй оператор if без скобок может быть опасен для редактирования, а первый может занять слишком много места для разработчика.
Лично я бы остался в стороне от этого только потому, что это необщеизвестная особенность.Используя общеизвестные синтаксисы (операторы if), другим программистам не нужно задумываться о том, что он делает.
(хотя, возможно, теперь я посмотрю на это. Это выглядит просто и избавляется от ненужных выражений if)