создание и продвижение сайта (вбиваю в ТОП-10, как гвозди)Настройка и сопровождение платной рекламы яндекс.директ

PHP. Руководство по PHP. 2005

gopher_parsedir

Пред.

След.

gopher_parsedir

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

Описание

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.

Примеры

Пример 1. Hypothetical output from gopher://gopher.example.com/

0All about my gopher site.	/allabout.txt	gopher.example.com	70

9A picture of my cat. /pics/cat.png gopher.example.com 70

1A collection of my writings. /stories gopher.example.com 70

hThe HTTP version of this site. URL:http://example.com gopher.example.com 70

1Mirror of this site in Spain. / gopher.ejemplo.co.es 70

iWelcome to my gopher site. error.host 1

iPlease select one of the options above error.host 1

iSend complaints to /dev/null error.host 1

iLong live gopher! error.host 1

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.

Пример 2. Using gopher_parsedir()

<?php

dl("gopher.so");

$directory = file("gopher://gopher.example.com");

foreach($directory as $dirent){

print_r(gopher_parsedir($dirent));

}

/* Expected Output

---------------

Array (

[type] => 0

[title] => All about my gopher site.

[path] => /allabout.txt

[host] => gopher.example.com

[port] => 70

)

Array (

[type] => 9

[title] => A picture of my cat.

[path] => /pics/cat.png

[host] => gopher.example.com

[port] => 70

)

Array (

[type] => 1

[title] => A collection of my writings.

[path] => /stories

[host] => gopher.example.com

[port] => 70

)

Array (

[type] => 254

[title] => The HTTP version of this site.

[path] => URL:http://example.com

[host] => gopher.example.com

[port] => 70

)

Array (

[type] => 1

[title] => Mirror of this site in Spain.

[path] => /

[host] => gopher.ejemplo.co.es

[port] => 70

)

Array (

[type] => 255

[title] => Welcome to my gopher site.

[path] =>

[host] => error.host

[port] => 1

)

Array (

[type] => 255

[title] => Please select one of the options above.

[path] =>

[host] => error.host

[port] => 1

)

Array (

[type] => 255

[title] => Send complaints to /dev/null

[path] =>

[host] => error.host

[port] => 1

)

Array (

[type] => 255

[title] => Long live gopher!

[path] =>

[host] => error.host

[port] => 1

)

*/

?>

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

Таблица 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.

Пред.

Начало

След.

Net_Gopher

Уровень выше

Network Functions

Отвечу на любые вопросы. С уважением, Дмитрий Владимирович.

Ваше письмо×
Free Web Hosting