Habari\FormControlFacet::parse PHP Метод

parse() публичный Метод

Example: $f->value = 'tag: "llamas" tag: feline alpaca'; var_dump($f->parsed()); // ['tag' => ['llamas', 'feline'], 'text' => ['alpaca']];
public parse ( ) : array
Результат array The array of parsed values
    public function parse()
    {
        preg_match_all('/(\\w+):\\s*"([^"]+)"|(\\w+):\\s*([\\S]+)|"([\\w\\s]+(?!:))"|([\\S]+(?!:))/im', $this->value, $matches, PREG_SET_ORDER);
        $results = array();
        foreach ($matches as $match) {
            if (!empty($match[1])) {
                $results[$match[1]][] = trim($match[2], '"');
            }
            if (!empty($match[3])) {
                $results[$match[3]][] = trim($match[4], '"');
            }
            if (!empty($match[5])) {
                $results['text'][] = trim($match[5], '"');
            }
            if (!empty($match[6])) {
                $results['text'][] = trim($match[6], '"');
            }
        }
        return $results;
    }