От функции я ожидаю предсказуемого поведения.
Вот вы сами написали - "Ведь она должна вернуть массив строк." Более того, в описании данной функции написано тоже самое. И вы не поверите - этого же я от нее и жду - массив строк а не прекращения выполнения. И тут дело не только в конкретной функции Select.
Смотрим функцию:
Код: Выделить всё
function Error($query = "")
{
registerError('sql', mysql_errno() . ": " . mysql_error() . "\n$query");
new error(mysql_errno() . ": " . mysql_error() . "<br>$query", 1);
return 1;
}
1. Видим что она возвращает 1 по окончании работы (
return 1).
2. На практике, данная функция никогда не дойдет до этого retur'a т.к. скрипт прекращает свою работу внутри new error.
Спрашивается, если до возврата из функции дело не доходит, то зачем его писать? Зачем вводить в заблуждение?
И наводящий вопрос, вы всегда заглядываете внутрь каждой функции и внутрь каждой вложенной в неё функции, перед тем как её собираетесь использовать или все таки смотрите описание?