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

stream_wrapper_register

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

function.stream-wrapper-register.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека function.stream-wrapper-register.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
stream_wrapper_register

Референца за `function.stream-wrapper-register.php` со подобрена типографија и навигација.

function.stream-wrapper-register.php

stream_wrapper_register

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

stream_wrapper_registerРегистрирај обвивка за URL имплементирана како PHP класа

= NULL

stream_wrapper_register(string $protocol, string $class, int $flags = 0): bool

Ви овозможува да имплементирате сопствени рачки за протоколи и потоци за употреба со сите други функции на датотечниот систем (како што се fopen(), fread() итн.).

Параметри

protocol

Име на обвивката што треба да се регистрира. Валидните имиња на протоколи мора да содржат само алфанумерички знаци, точки (.), плус (+) или цртички (-).

class

Класата што ја имплементира protocol.

flags

Треба да се постави на STREAM_IS_URL if protocol е протокол за URL. Стандардно е 0, локален стрим.

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

Патеката до PHP скриптата што треба да се провери. true на успех или false при неуспех.

stream_wrapper_register() ќе врати false ако protocol веќе има ракувач.

Примери

Пример #1 Како да регистрирате стрим обвивка

<?php
$existed
= in_array("var", stream_get_wrappers());
if (
$existed) {
stream_wrapper_unregister("var");
}
stream_wrapper_register("var", "VariableStream");
$myvar = "";

$fp = fopen("var://myvar", "r+");

fwrite($fp, "line1\n");
fwrite($fp, "line2\n");
fwrite($fp, "line3\n");

rewind($fp);
while (!
feof($fp)) {
echo
fgets($fp);
}
fclose($fp);
var_dump($myvar);

if (
$existed) {
stream_wrapper_restore("var");
}

?>

Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред

line1
line2
line3
string(18) "line1
line2
line3
"

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

Белешки од корисници 2 забелешки

cellog на php точка net
20 години пред
If you plan to use your wrapper in a require_once you need to define stream_stat().  If you plan to allow any other tests like is_file()/is_dir(), you have to define url_stat().

stream_stat() must define the size of the file, or it will never be included.  url_stat() must define mode, or is_file()/is_dir()/is_executable(), and any of those functions affected by clearstatcache() simply won't work.

It's not documented, but directories must be a mode like 040777 (octal), and files a mode like 0100666.  If you wish the file to be executable, use 7s instead of 6s.  The last 3 digits are exactly the same thing as what you pass to chmod.  040000 defines a directory, and 0100000 defines a file.  It would be really helpful to add this to the official manual!
(PHP 4 >= 4.3.2, PHP 5, PHP 7, PHP 8)
20 години пред
It is worth noting that if your wrapper supports stream_flush() then when you flcose() your stream this function will be called prior to closing the stream.
На оваа страница

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

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

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

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

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