Класс yii\mongodb\file\StreamWrapper
| Наследование | yii\mongodb\file\StreamWrapper » yii\base\Object |
|---|---|
| Реализует | yii\base\Configurable |
| Доступно с версии | 2.1 |
| Исходный код | https://github.com/yiisoft/yii2-mongodb/blob/master/file/StreamWrapper.php |
StreamWrapper предоставляет оболочку потока для MongoDB GridFS, позволяя выполнять операции с файлами через обычные PHP потоки ресурсов.
Перед использованием этой оболочки её необходимо зарегистрировать через метод register(). Обычно это делается через \yii\mongodb\file\yii\mongodb\Connection::registerFileStreamWrapper().
Примечание: не используйте этот класс напрямую - его экземпляр будет создан и поддерживаться PHP внутри, как только соответствующий ресурс потока будет создан.
Путь к ресурсу должен быть указан в следующем формате:
'protocol://databaseName.fileCollectionPrefix?file_attribute=value'
Пример записи:
$resource = fopen('gridfs://mydatabase.fs?filename=new_file.txt', 'w');
fwrite($resource, 'some content');
// ...
fclose($resource);
Пример чтения:
$resource = fopen('gridfs://mydatabase.fs?filename=my_file.txt', 'r');
$fileContent = stream_get_contents($resource);
См. также http://php.net/manual/ru/function.stream-wrapper-register.php.
Общественные свойства
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| $context | ресурс | Контекст связанного ресурса потока. | yii\mongodb\file\StreamWrapper |
| $contextOptions | массив | Параметры контекста. | yii\mongodb\file\StreamWrapper |
Общественные методы
| Метод | Описание | Определено в |
|---|---|---|
| __call() | Вызывает метод с указанным именем, который не является методом класса. | yii\base\Object |
| __construct() | Конструктор. | yii\base\Object |
| __get() | Возвращает значение свойства объекта. | yii\base\Object |
| __isset() | Проверяет, установлено ли свойство, т.е. определено и не равно null. | yii\base\Object |
| __set() | Устанавливает значение свойства объекта. | yii\base\Object |
| __unset() | Устанавливает свойство объекта в null. | yii\base\Object |
| canGetProperty() | Возвращает значение, указывающее, можно ли читать свойство. | yii\base\Object |
| canSetProperty() | Возвращает значение, указывающее, можно ли установить свойство. | yii\base\Object |
| className() | Возвращает полное имя этого класса. | yii\base\Object |
| getContextOptions() | Возвращает параметры, связанные с $context. | yii\mongodb\file\StreamWrapper |
| hasMethod() | Возвращает значение, указывающее, определён ли метод. | yii\base\Object |
| hasProperty() | Возвращает значение, указывающее, определено ли свойство. | yii\base\Object |
| init() | Инициализирует объект. | yii\base\Object |
| register() | Регистрирует эту оболочку потока. | yii\mongodb\file\StreamWrapper |
| stream_close() | Закрывает ресурс. | yii\mongodb\file\StreamWrapper |
| stream_eof() | Проверяет конец файла в указателе файла. | yii\mongodb\file\StreamWrapper |
| stream_flush() | Этот метод вызывается в ответ на fflush() и при закрытии потока, когда любые невыполненные данные были записаны в него ранее. | yii\mongodb\file\StreamWrapper |
| stream_open() | Открывает файл. | yii\mongodb\file\StreamWrapper |
| stream_read() | Читает из потока. | yii\mongodb\file\StreamWrapper |
| stream_seek() | Перемещает указатель к определённому месту в потоке. | yii\mongodb\file\StreamWrapper |
| stream_stat() | Получает информацию о файловом ресурсе. | yii\mongodb\file\StreamWrapper |
| stream_tell() | Получает текущую позицию потока. | yii\mongodb\file\StreamWrapper |
| stream_write() | Записывает в поток. | yii\mongodb\file\StreamWrapper |
Подробности свойств
$context общественное свойство
Контекст связанного ресурса потока. Это свойство автоматически устанавливается PHP после создания оболочки.
public resource $context = null
$contextOptions общественное только для чтения свойство
Параметры контекста.
public array getContextOptions ( )
Подробности методов
getContextOptions() public method
Возвращает параметры, связанные с $context.
| public array getContextOptions ( ) | ||
|---|---|---|
| return | array |
Параметры контекста. |
register() public static method
Регистрирует этот обработчик потока.
| public static void register ( $protocol = 'gridfs', $force = false ) | ||
|---|---|---|
| $protocol | string |
Имя протокола, который будет использоваться. |
| $force | boolean |
Указывает, следует ли зарегистрировать обработчик, даже если протокол уже занят. |
stream_close() public method
Закрывает ресурс.
Этот метод вызывается в ответ на fclose().
См. также \yii\mongodb\file\fclose().
| public void stream_close ( ) |
|---|
stream_eof() public method
Проверяет конец файла для указателя файла.
Этот метод вызывается в ответ на feof().
См. также \yii\mongodb\file\feof().
| public boolean stream_eof ( ) | ||
|---|---|---|
| return | boolean |
|
stream_flush() public method
Этот метод вызывается в ответ на fflush() и когда поток закрывается, а любые невыполненные данные были записаны в него до этого.
См. также \yii\mongodb\file\fflush().
| public boolean stream_flush ( ) | ||
|---|---|---|
| return | boolean |
Указывает, были ли данные кэша успешно сохранены. |
stream_open() public method
Открывает файл.
Этот метод вызывается сразу после инициализации обработчика (например, fopen() и file_get_contents()).
См. также \yii\mongodb\file\fopen().
| public boolean stream_open ( $path, $mode, $options, &$openedPath ) | ||
|---|---|---|
| $path | string |
Указывает URL, который был передан в исходную функцию. |
| $mode | string |
Режим открытия файла, как описано для |
| $options | integer |
Дополнительные флаги, установленные API потоков. |
| $openedPath | string |
Реальный открытый путь. |
| return | boolean |
Указывает, было ли выполнено действие успешно. |
stream_read() public method
Читает из потока.
Этот метод вызывается в ответ на fread() и fgets().
См. также \yii\mongodb\file\fread().
| public string|false stream_read ( $count ) | ||
|---|---|---|
| $count | integer |
Количество байтов данных с текущей позиции, которое должно быть возвращено. |
| return | string|false |
Если доступно меньше, чем count байтов, возвращаются доступные. Если больше данных недоступно, возвращается |
stream_seek() public method
Перемещает указатель к определенному месту в потоке.
Этот метод вызывается в ответ на fseek().
См. также \yii\mongodb\file\fseek().
| public boolean stream_seek ( $offset, $whence = SEEK_SET ) | ||
|---|---|---|
| $offset | integer |
Смещение потока для перемещения. |
| $whence | integer |
Возможные значения:
|
| return | boolean |
Возвращает true, если позиция была обновлена, и false в противном случае. |
stream_stat() public method
Получение информации о файловом ресурсе.
Этот метод вызывается в ответ на stat().
См. также \yii\mongodb\file\stat().
| public array stream_stat ( ) | ||
|---|---|---|
| return | array |
Информация о статистике файла. |
stream_tell() public method
Получение текущей позиции потока.
Этот метод вызывается в ответ на fseek() для определения текущей позиции.
См. также \yii\mongodb\file\fseek().
| public integer stream_tell ( ) | ||
|---|---|---|
| return | integer |
Должен вернуть текущую позицию потока. |
stream_write() public method
Запись в поток.
Этот метод вызывается в ответ на fwrite().
См. также \yii\mongodb\file\fwrite().
| public integer stream_write ( $data ) | ||
|---|---|---|
| $data | string |
Строка, которая должна быть сохранена в базовом потоке. |
| return | integer |
Количество байтов, которые были успешно сохранены. |
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-mongodb-file-streamwrapper.html