Класс CallbackStream
Реализация потоков PSR HTTP.
Это отличается от потока Laminas\Diactoros\Callback тем, что позволяет использовать echo внутри обратного вызова и изящно обрабатывает случай, когда обратный вызов не возвращает строку.
В идеале мы можем исправить/обновить diactoros, но нам нужно разобраться с этим в проекте diactoros. До тех пор мы будем использовать эту обходную реализацию для обеспечения обратной совместимости с существующими приложениями CakePHP.
Краткое описание свойств
- $callback protected
callable|null
Краткое описание методов
-
__construct() public
-
__toString() public
Считывает все данные из потока в строку, от начала до конца.
-
attach() public
Присоединяет новую функцию обратного вызова к экземпляру.
-
close() public
Закрывает поток и все связанные ресурсы.
-
detach() public
Отделяет любые связанные ресурсы от потока.
-
eof() public
Возвращает true, если поток достиг конца.
-
getContents() public
Возвращает оставшееся содержимое в строке
-
getMetadata() public
Получает метаданные потока в виде ассоциативного массива или извлекает определённый ключ.
-
getSize() public
Получает размер потока, если он известен.
-
isReadable() public
Возвращает, является ли поток читаемым.
-
isSeekable() public
Возвращает, допускает ли поток поиск.
-
isWritable() public
Возвращает, является ли поток записываемым.
-
read() public
Считывает данные из потока.
-
rewind() public
Перемещает указатель на начало потока.
-
seek() public
Перемещает указатель на определённую позицию в потоке.
-
tell() public
Возвращает текущую позицию указателя чтения/записи файла.
-
write() public
Записывает данные в поток.
Подробное описание методов
__construct() public
__construct(callable $callback)
Параметры
-
callable$callback
Исключения
Exception\InvalidArgumentException__toString() public
__toString(): string
Считывает все данные из потока в строку, от начала до конца.
Этот метод ОБЯЗАН попытаться переместиться к началу потока перед чтением данных и читать поток до тех пор, пока не будет достигнут конец.
Предупреждение: Это может попытаться загрузить большое количество данных в память.
Этот метод НЕ ДОЛЖЕН генерировать исключение, чтобы соответствовать операциям преобразования в строку PHP.
Возвращаемое значение
stringattach() public
attach(callable $callback): void
Присоединяет новую функцию обратного вызова к экземпляру.
Параметры
-
callable$callback
Возвращаемое значение
voidclose() public
close(): void
Закрывает поток и все связанные ресурсы.
Возвращаемое значение
voiddetach() public
detach(): null|callable
Отделяет любые связанные ресурсы от потока.
После отделения потока он становится непригодным для использования.
Возвращаемое значение
null|callableeof() public
eof(): bool
Возвращает true, если поток достиг конца.
Возвращаемое значение
boolgetContents() public
getContents(): string
Возвращает оставшееся содержимое в строке
Возвращаемое значение
stringgetMetadata() public
getMetadata(string $key = null): array|mixed|null
Получает метаданные потока в виде ассоциативного массива или извлекает определённый ключ.
Ключи, возвращаемые здесь, идентичны ключам, возвращаемым функцией PHP stream_get_meta_data().
Параметры
-
string$key optional
Возвращаемое значение
array|mixed|nullgetSize() public
getSize(): ?int
Получает размер потока, если он известен.
Возвращаемое значение
?intisReadable() public
isReadable(): bool
Возвращает, является ли поток читаемым.
Возвращаемое значение
boolisSeekable() public
isSeekable(): bool
Возвращает, допускает ли поток поиск.
Возвращаемое значение
boolisWritable() public
isWritable(): bool
Возвращает, является ли поток записываемым.
Возвращаемое значение
boolread() public
read(int $length): string
Считывает данные из потока.
Параметры
-
int$length
Возвращаемое значение
stringrewind() public
rewind(): void
Перемещает указатель на начало потока.
Если поток не допускает поиск, этот метод сгенерирует исключение; в противном случае он выполнит seek(0).
Возвращаемое значение
voidseek() public
seek(int $offset, int $whence = SEEK_SET): void
Перемещает указатель на определённую позицию в потоке.
Параметры
-
int$offset -
int$whence optional
Возвращаемое значение
voidtell() public
tell(): int
Возвращает текущую позицию указателя чтения/записи файла
Возвращаемое значение
intwrite() public
write(string $string): void
Записывает данные в поток.
Параметры
-
string$string
Возвращаемое значение
voidПодробное описание свойств
$callback protected
Тип
callable|null
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.3/class-Cake.Http.CallbackStream.html