gopher_parsedir

gopher_parsedir -- Translate a gopher formatted directory entry into an associative array.

Description

array gopher_parsedir (string dirent)

While gopher returns text/plain documents for actual document requests. A request to a directory (such as /) will return specially encoded series of lines with each line being one directory entry or information line.

In the example above, the root directory at gopher.example.com knows about one DOCUMENT identified by 0 located at gopher://gopher.example.com:70/allabout.txt. It also knows about two other directory (which have their own listing files) at gopher://gopher.exmaple.com:70/stories and at gopher://gopher.ejemplo.co.es:70/. In addition there is a binary file, a link to an HTTP url, and several informative lines.

By passing each line of the directory listing into gopher_parsedir(), an associative array is formed containing a parsed out version of the data.

The values given by type are associated with the following constants.

Table 1. Gopher Constants

ConstantDefinition
GOPHER_DOCUMENTStandard text/plain document.
GOPHER_DIRECTORYA resource containing a gopher formatted directory listing.
GOPHER_BINHEXA BinHex encoded binary file.
GOPHER_DOSBINARYA DOS formatted binary archive.
GOPHER_UUENCODEDA UUEncoded file.
GOPHER_BINARYA generic binary file.
GOPHER_INFOAn Informational entry
GOPHER_HTTPA reference to an HTTP resource.
GOPHER_UNKNOWN An unrecognized entry, the line will be returned in data.