prepareModels() protected method

protected prepareModels ( )
コード例 #1
0
 /**
  * @inheritdoc
  */
 protected function prepareModels()
 {
     $pattern = $this->getPattern();
     if ($pattern == false) {
         return parent::prepareModels();
     }
     $origAll = $this->allModels;
     $attribute = $this->alphaAttribute;
     $this->allModels = array_filter($this->allModels, function ($v) use($attribute, $pattern) {
         $attrVal = $v->{$attribute};
         if (is_array($pattern)) {
             $pattern = '/^' . current($pattern) . '/';
             return preg_match($pattern, $attrVal) === 1;
         } else {
             return stripos($attrVal, $pattern) === 0;
         }
     });
     $r = parent::prepareModels();
     $this->allModels = $origAll;
     return $r;
 }