/**
  * 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'];
         }
     }
 }