protected function parseTableLine($line)
    {
        $header = false;
        $pretty = false;
        $line = trim($line);

        if (!strlen($line)) {
            return false;
        }

        // Finds the table chars
        $chars = $this->findTableChars($line);

        if (!$chars) {
            return false;
        }

        if ($chars[0] == Environment::$prettyTableJoint && $chars[1] == Environment::$prettyTableLetter) {
            $pretty = true;
            $chars = array(Environment::$prettyTableLetter, Environment::$prettyTableJoint);
        } else if ($chars[0] == Environment::$prettyTableJoint && $chars[1] == Environment::$prettyTableHeader) {
            $pretty = true;
            $header = true;
            $chars = array(Environment::$prettyTableHeader, Environment::$prettyTableJoint);
        } else {
            if (!($chars[0] == Environment::$tableLetter && $chars[1] == ' ')) {
                return false;
            }
        }

        $parts = array();
        $separator = false;
        // Crawl the line to match those chars
        for ($i=0; $i<strlen($line); $i++) {
            if ($line[$i] == $chars[0]) {
                if (!$separator) {
                    $parts[] = $i;
                    $separator = true;
                }
            } else {
                if ($line[$i] == $chars[1]) {
                    $separator = false;
                } else {
                    return false;
                }
            }
        }

        if (count($parts) > 1) {
            return array(
                $header,
                $pretty,
                $parts
            );
        }

        return false;
    }
protected function parseTableLine($line)
    {
        $header = false;
        $pretty = false;
        $line = trim($line);

        if (!strlen($line)) {
            return false;
        }

        // Finds the table chars
        $chars = $this->findTableChars($line);

        if (!$chars) {
            return false;
        }

        if ($chars[0] == Environment::$prettyTableJoint && $chars[1] == Environment::$prettyTableLetter) {
            $pretty = true;
            $chars = array(Environment::$prettyTableLetter, Environment::$prettyTableJoint);
        } else if ($chars[0] == Environment::$prettyTableJoint && $chars[1] == Environment::$prettyTableHeader) {
            $pretty = true;
            $header = true;
            $chars = array(Environment::$prettyTableHeader, Environment::$prettyTableJoint);
        } else {
            if (!($chars[0] == Environment::$tableLetter && $chars[1] == ' ')) {
                return false;
            }
        }

        $parts = array();
        $separator = false;
        // Crawl the line to match those chars
        for ($i=0; $i<strlen($line); $i++) {
            if ($line[$i] == $chars[0]) {
                if (!$separator) {
                    $parts[] = $i;
                    $separator = true;
                }
            } else {
                if ($line[$i] == $chars[1]) {
                    $separator = false;
                } else {
                    return false;
                }
            }
        }

        if (count($parts) > 1) {
            return array(
                $header,
                $pretty,
                $parts
            );
        }

        return false;
    }
protected function parseTableLine ( $ line ) { $ header = false ; $ pretty = false ; $ line = trim ( $ line ) ; if ( ! strlen ( $ line ) ) { return false ; } // Finds the table chars $ chars = $ this -> findTableChars ( $ line ) ; if ( ! $ chars ) { return false ; } if ( $ chars [ 0 ] == Environment :: $ prettyTableJoint && $ chars [ 1 ] == Environment :: $ prettyTableLetter ) { $ pretty = true ; $ chars = array ( Environment :: $ prettyTableLetter , Environment :: $ prettyTableJoint ) ; } else if ( $ chars [ 0 ] == Environment :: $ prettyTableJoint && $ chars [ 1 ] == Environment :: $ prettyTableHeader ) { $ pretty = true ; $ header = true ; $ chars = array ( Environment :: $ prettyTableHeader , Environment :: $ prettyTableJoint ) ; } else { if ( ! ( $ chars [ 0 ] == Environment :: $ tableLetter && $ chars [ 1 ] == ' ' ) ) { return false ; } } $ parts = array ( ) ; $ separator = false ; // Crawl the line to match those chars for ( $ i = 0 ; $ i < strlen ( $ line ) ; $ i ++ ) { if ( $ line [ $ i ] == $ chars [ 0 ] ) { if ( ! $ separator ) { $ parts [ ] = $ i ; $ separator = true ; } } else { if ( $ line [ $ i ] == $ chars [ 1 ] ) { $ separator = false ; } else { return false ; } } } if ( count ( $ parts ) > 1 ) { return array ( $ header , $ pretty , $ parts ) ; } return false ; }
If the given line is a table line, this will returns the parts
of the given line, i.e the offset of the separators

====================== ========= ===========
0                      23        33

+---------------------+---------+-----------+
1                     23        33

@param string $line
@return mixed
If the given line is a table line this will returns the parts of the given line i . e the offset of the separators