roundcubemail/program/lib/Roundcube/rcube_result_thread.php
public function get_tree()
    {
        $datalen = strlen($this->raw_data);
        $result  = array();
        $start   = 0;

        while (($pos = @strpos($this->raw_data, self::SEPARATOR_ELEMENT, $start))
            || ($start < $datalen && ($pos = $datalen))
        ) {
            $len   = $pos - $start;
            $elem  = substr($this->raw_data, $start, $len);
            $items = explode(self::SEPARATOR_ITEM, $elem);
            $result[array_shift($items)] = $this->build_thread($items);
            $start = $pos + 1;
        }

        return $result;
    }
public function get_tree()
    {
        $datalen = strlen($this->raw_data);
        $result  = array();
        $start   = 0;

        while (($pos = @strpos($this->raw_data, self::SEPARATOR_ELEMENT, $start))
            || ($start < $datalen && ($pos = $datalen))
        ) {
            $len   = $pos - $start;
            $elem  = substr($this->raw_data, $start, $len);
            $items = explode(self::SEPARATOR_ITEM, $elem);
            $result[array_shift($items)] = $this->build_thread($items);
            $start = $pos + 1;
        }

        return $result;
    }
public function get_tree ( ) { $ datalen = strlen ( $ this -> raw_data ) ; $ result = array ( ) ; $ start = 0 ; while ( ( $ pos = @ strpos ( $ this -> raw_data , self :: SEPARATOR_ELEMENT , $ start ) ) || ( $ start < $ datalen && ( $ pos = $ datalen ) ) ) { $ len = $ pos - $ start ; $ elem = substr ( $ this -> raw_data , $ start , $ len ) ; $ items = explode ( self :: SEPARATOR_ITEM , $ elem ) ; $ result [ array_shift ( $ items ) ] = $ this -> build_thread ( $ items ) ; $ start = $ pos + 1 ; } return $ result ; }
Returns data as tree

@return array Data tree
Returns data as tree