/** * Check Function * * This is responsible for checking the driver configuration to determine * if the system supports a particular function. * * @param string $function The name of the function to check. * * @return mixed On success, an associative array with specific function keys * and values; on failure, false. * @access public */ public function checkFunction($function) { // Extract the configuration from the driver if available: $functionConfig = method_exists($this->driver, 'getConfig') ? $this->driver->getConfig($function) : false; // See if we have a corresponding check method to analyze the response: $checkMethod = "_checkMethod" . $function; if (!method_exists($this, $checkMethod)) { //Just see if the method exists on the driver return method_exists($this->driver, $function); } // Send back the settings: return $this->{$checkMethod}($functionConfig); }