Вместо того, чтобы циклом формировать из тегов список, удобно воспользоваться API Joomla.

echo JHTML::_( 'select.genericlist', $this->zayavki, 'zayavki', null, $key = 'id', $text = 'title');

в общем виде это выглядит так:

function genericlist( $arr, $name, $attribs = null, $key = 'value', $text = 'text', $selected = NULL, $idtag = false, $translate = false )

$arr - это массив объектов с записями, данные для списка по умолчанию это value и text, если выборка делалась из таблицы где нужные для списка поля id и title, то это указывается с помощью аргументов $key и $text

$attribs - это именованный массив с атрибутами тега select

Чтобы добавить в начало списка дополнительные элементы, делаем так:

$obj = new stdClass;
$obj->id = 0;
$obj->title = 'select item';

array_unshift($this->zayavki, $obj);

В данном случае у нас свойства объекта id и title, по умолчанию это value и text.

Формировать элементы списка можно еще так:

$items[] = JHTML::_('select.option', $value = '0', $text= JText::_( 'SELECT_ITEM' ), 'id', 'title');

Определение функции option:

public static function option($value, $text = '', $optKey = 'value', $optText = 'text', $disable = false)

Также добавляем если нужно дополнительные элементы к массиву и затем склеиваем получившийся массив с имеющимся массивом для списка:

$this->zayavki = array_merge($items, $this->zayavki);

Есть еще одна функция - options:

public static function options($arr, $optKey = 'value', $optText = 'text', $selected = null, $translate = false)

Ее можно использовать так:

$html = '<select name="zayvki" id="zayvki">';
$html .= JHTML::_('select.options', $this->zayavki, 'id', 'title');
$html .= '</select>';

Функции genericlist, options и option определены в файле libraries\joomla\html\html\select.php, так что, если что можно еще там посмотреть, какие аргументы передаются и как используются в функциях.