stream_filter_register

(PHP 5, PHP 7, PHP 8)

stream_filter_register — реєструє потоковий фільтр, визначений користувачем

Опис

stream_filter_register(string $filter_name, string $class): bool

stream_filter_register() дозволяє реалізувати власний фільтр для будь-якого зареєстрованого потоку, що використовується з усіма іншими функціями файлової системи (такими як fopen() fread()и т. д.).

Список параметрів

filter_name

Назва фільтру, що реєструється.

class

Щоб реалізувати фільтр, вам потрібно визначити клас як розширення php_user_filter c цілим рядом функцій-членів. При виконанні операцій читання/запису на потоці, до якого прикріплений ваш фільтр, PHP передаватиме дані через ваш фільтр (і через будь-які інші фільтри, прикріплені до потоку), так що дані можуть бути змінені як потрібно. Вам необхідно реалізувати методи точно як описано в php_user_filter. Інша реалізація призведе до непередбачуваної поведінки.

Значення, що повертаються

Повертає true у разі успішного виконання або **false**в случае возникновения ошибки.

stream_filter_register() повертатиме **false**якщо фільтр з ім'ям filter_name вже визначено.

Приклади

Приклад #1 Фільтр для перекладу букв у верхній регістр у потоці foo-bar.txt

Приклад нижче реалізує фільтр під назвою strtoupper на файловому потоці foo-bar.txt, який буде переводити в великі всі літери, які пишуться/читаються з цього потоку.

Loading...

Результат виконання наведеного прикладу:

LINE1
WORD - 2
EASY AS 123

Приклад #2 Реєстрація стандартного фільтра, що відповідає множинним іменам фільтрів.

Loading...

Результат виконання наведеного прикладу:

LINE1
WORD - 2
EASY AS 123

Дивіться також