Перенаправлення функцій WinCache

ЗВЕРНІТЬ УВАГУ: wincache.rerouteini видалено у WinCache 1.3.7.0. Вона була замінена автоматичним перенаправленням. Дивіться wincache.reroute_enabled

Перенаправлення функцій WinCache (доступно з WinCache 1.2.0, видалено з WinCache 1.3.7.0) може використовуватися для заміни вбудованих функцій їх еквівалентами, оптимізованими для роботи з файловим кешем. Модуль WinCache включає оптимізовані під Windows реалізації функцій роботи з файлами, що може підвищити продуктивність PHP-програм у випадках роботи з файлами та мережевими папками. Оптимізовані версії представлені для таких функцій:

Для налаштування використання перенаправлення WinCache використовується файл reroute.ini, який включений в інсталяційний пакет. Скопіюйте цей файл на ту ж директорію, де знаходиться php.ini. Після цього додайте в php.ini налаштування wincache.rerouteini і вкажіть абсолютний або відносний шлях reroute.ini.

Приклад #1 Увімкнення перенаправлення функцій у WinCache

wincache.rerouteini = C:\PHP\reroute.ini

Зауваження: Якщо перенаправлення функцій увімкнено, рекомендується збільшити розмір файлового кеша WinCache. Його розмір налаштовується у директиві wincache.fcachesize

Файл reroute.ini містить опис прив'язок вбудованих функцій PHP до еквівалентів модуля WinCache. Кожен рядок файлу визначає прив'язку з використанням наступного синтаксису:

<Ім'я функції PHP>:[<кількість параметрів функції>]=<ім'я функції wincache>

Приклад файлу наведено нижче. У цьому прикладі виклик PHP-функції file_get_contents() підміняється викликом функції wincache_file_get_contents() тільки якщо кількість переданих параметрів менша або дорівнює 2. Вказівка ​​кількості параметрів корисна, якщо підмінювальна функція реалізує обробку не всіх вихідних параметрів.

Приклад #2 Вміст файлу Reroute.ini

[FunctionRerouteList]file_exists=wincache_file_exists file_get_contents:2=wincache_file_get_contents readfile:2=wincache_readfile is_readable=wincache_is_readable is_writable=wincache_is_writable is_writeable=wincache_is_writable is_file=wincache_is_file is_dir=wincache_is_dir realpath=wincache_realpath filesize=wincache_filesize