/** * rule * @param string $key name属性 * @param array $option * @return string エラーメッセージ */ public function rule($key, array $options = array()) { $value = $this->Data->get($key); if (!is_null($value) && !MWF_Functions::is_empty($value)) { $defaults = array('types' => '', 'message' => __('This file is invalid.', MWF_Config::DOMAIN)); $options = array_merge($defaults, $options); $_types = explode(',', $options['types']); foreach ($_types as $type) { $types[] = preg_quote(trim($type), '/'); } $types = implode('|', MWF_Functions::array_clean($types)); $pattern = '/\\.(' . $types . ')$/i'; if (!preg_match($pattern, $value)) { return $options['message']; } } }