protected function explodeExplicitRule($rule)
    {
        if (is_string($rule)) {
            return explode('|', $rule);
        } elseif (is_object($rule)) {
            return [$this->prepareRule($rule)];
        }

        return array_map([$this, 'prepareRule'], $rule);
    }
protected function explodeExplicitRule($rule)
    {
        if (is_string($rule)) {
            return explode('|', $rule);
        } elseif (is_object($rule)) {
            return [$this->prepareRule($rule)];
        }

        return array_map([$this, 'prepareRule'], $rule);
    }
protected function explodeExplicitRule ( $ rule ) { if ( is_string ( $ rule ) ) { return explode ( '|' , $ rule ) ; } elseif ( is_object ( $ rule ) ) { return [ $ this -> prepareRule ( $ rule ) ] ; } return array_map ( [ $ this , 'prepareRule' ] , $ rule ) ; }
Explode the explicit rule into an array if necessary.

@param  mixed  $rule
@return array
Explode the explicit rule into an array if necessary .