/** * SELECT statement factory. * @param string|array $columns Array or comma-separated list (optional) * @param string $table * @return Result fluent interface */ public function select($columns = null, $table = null) { $result = new Result($this->connection, $columns, $table); foreach ($this->observers as $observer) { $result->attachObserver($observer, $this->observers->getInfo()); } return $result; }