PHP.mk документација

streamWrapper::dir_readdir

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

streamwrapper.dir-readdir.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека streamwrapper.dir-readdir.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
streamWrapper::dir_readdir

Референца за `streamwrapper.dir-readdir.php` со подобрена типографија и навигација.

streamwrapper.dir-readdir.php

streamWrapper::dir_readdir

(PHP 4 >= 4.3.2, PHP 5, PHP 7, PHP 8)

streamWrapper::dir_readdirПрочитај запис од рачката на директориумот

= NULL

public streamWrapper::dir_readdir(): string|bool

Овој метод се повикува како одговор на readdir().

Параметри

Оваа функција нема параметри.

Вратени вредности

Треба да врати string претставува следната датотека, или false ако нема следна датотека.

Ги ескејпува специјалните знаци во стринг за употреба во SQL изјава

Враќање true or false ќе има исто дејство на сигнализирање дека нема следна датотека. Сепак, враќањето true се обесхрабрува и false треба да се користи за сигнализирање на оваа состојба наместо тоа.

Забелешка:

Не-булова вредност ќе биде претворена во string.

Errors/Exceptions

Емитува E_WARNING ако повикот на овој метод не успее (т.е. не е имплементиран).

Примери

Пример #1 Набројување датотеки од tar архиви

<?php
class streamWrapper {
protected
$fp;

public function
dir_opendir($path, $options) {
$url = parse_url($path);

$path = $url["host"] . $url["path"];

if (!
is_readable($path)) {
trigger_error("$path isn't readable for me", E_USER_NOTICE);
return
false;
}
if (!
is_file($path)) {
trigger_error("$path isn't a file", E_USER_NOTICE);
return
false;
}

$this->fp = fopen($path, "rb");
return
true;
}

public function
dir_readdir() {
// Extract the header for this entry
$header = fread($this->fp, 512);
$data = unpack("a100filename/a8mode/a8uid/a8gid/a12size/a12mtime/a8checksum/a1filetype/a100link/a100linkedfile", $header);

// Trim the filename and filesize
$filename = trim($data["filename"]);

// No filename? We are the end of the archive
if (!$filename) {
return
false;
}

$octal_bytes = trim($data["size"]);
// Filesize is defined in octects
$bytes = octdec($octal_bytes);

// tar rounds up filesizes up to multiple of 512 bytes (zero filled)
$rest = $bytes % 512;
if (
$rest > 0) {
$bytes += 512 - $rest;
}

// Seek over the file
fseek($this->fp, $bytes, SEEK_CUR);

return
$filename;
}

public function
dir_closedir() {
return
fclose($this->fp);
}

public function
dir_rewinddir() {
return
fseek($this->fp, 0, SEEK_SET);
}
}

stream_wrapper_register("tar", "streamWrapper");
$handle = opendir("tar://example.tar");
while (
false !== ($file = readdir($handle))) {
var_dump($file);
}

echo
"Rewinding..\n";
rewind($handle);
var_dump(readdir($handle));

closedir($handle);
?>

Горниот пример ќе прикаже нешто слично на:

string(13) "construct.xml"
string(16) "dir-closedir.xml"
string(15) "dir-opendir.xml"
string(15) "dir-readdir.xml"
string(17) "dir-rewinddir.xml"
string(9) "mkdir.xml"
string(10) "rename.xml"
string(9) "rmdir.xml"
string(15) "stream-cast.xml"
string(16) "stream-close.xml"
string(14) "stream-eof.xml"
string(16) "stream-flush.xml"
string(15) "stream-lock.xml"
string(15) "stream-open.xml"
string(15) "stream-read.xml"
string(15) "stream-seek.xml"
string(21) "stream-set-option.xml"
string(15) "stream-stat.xml"
string(15) "stream-tell.xml"
string(16) "stream-write.xml"
string(10) "unlink.xml"
string(12) "url-stat.xml"
Rewinding..
string(13) "construct.xml"

Види Исто така

  • readdir() - Читај запис од рачка на директориум

Белешки од корисници

Нема белешки од корисници за оваа страница.
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.