Когда я использую класс запросов к базе данных Kohana с подготовленным оператором, я получаю сообщение об ошибке:
ErrorException [Fatal Error]: невозможно использовать объект типа Database_Query_Builder_Select в качестве массива
$query = DB::select('id,lat,lng')->from('projects')->where('id', '=', ':id');
$query->param(':id', $id);
$query->execute();
return $query[0];
С цепочкой работает нормально:
$query = DB::select('id,lat,lng')->from('projects')->where('id', '=', ':id')->param(':id', $id)->execute();
return $query[0];
что мне не хватает?
Вы на самом деле не делаете то же самое. Во втором коде вы присваиваете возвращаемое значение и получаете доступ к нему, а не к запросу. Так что-то вроде этого должно работать
$query = DB::select('id,lat,lng')->from('projects')->where('id', '=', ':id');
$query->param(':id', $id);
$result = $query->execute();
return $result[0];
Других решений пока нет …