Extends
lithium\core\StaticObject
If no values supplied, returns the name of the `Model` key. If values
are supplied, returns the key value.
Parameters
- array $values An array of values.
Returns
mixed Key value.Source
public static function key($values = array()) {
$key = static::_object()->_meta['key'];
if (is_object($values) && method_exists($values, 'to')) {
$values = $values->to('array');
} elseif (is_object($values) && is_string($key) && isset($values->{$key})) {
return $values->{$key};
}
if (!$values) {
return $key;
}
if (!is_array($values) && !is_array($key)) {
return array($key => $values);
}
$key = (array) $key;
return array_intersect_key($values, array_combine($key, $key));
}