/** * Enables calling the various parts of a query as functions for a fluent interface. * * i.e. $query->select("id")->from("mytable")->orderby("name"); * See DatabaseSelectQuery class for an example. * */ public function __call($method, $args) { if (!$this->has($method)) { return parent::__call($method, $args); } $curValue = $this->get($method); $value = $args[0]; if (is_array($value)) { $curValue = array_merge($curValue, $value); } else { $curValue[] = trim($value, ", "); } $this->set($method, $curValue); return $this; }