Хранилище
класс Store реализует StoreInterface
Store реализует всю логику хранения метаданных кэша (заголовки запроса и ответа).
Свойства
| protected | $root |
Методы
| __construct(string $root) | ||
| cleanup() Очистка хранилища. | ||
| bool|string | lock(Request $request) Попытка заблокировать кэш для данного запроса без ожидания. | |
| bool | unlock(Request $request) Освобождает блокировку для данного запроса. | |
| bool | isLocked(Request $request) Возвращает, существует ли блокировка. | |
| Response|null | lookup(Request $request) Ищет кэшированный ответ для предоставленного запроса. | |
| string | write(Request $request, Response $response) Записывает запись в кэш для данного запроса и ответа. | |
| string | generateContentDigest(Response $response) Возвращает хэш содержимого для $response. | |
| invalidate(Request $request) Отменяет все кэшированные записи, соответствующие запросу. | ||
| bool | purge(string $url) Удаляет данные для указанного URL. | |
| getPath($key) | ||
| string | generateCacheKey(Request $request) Генерирует ключ кэша для данного запроса. |
Подробное описание
__construct(string $root)
Параметры
| string | $root |
Исключения
| RuntimeException |
cleanup()
Очистка хранилища.
bool|string lock(Request $request)
Попытка заблокировать кэш для данного запроса без ожидания.
Параметры
| Request | $request |
Значение результата
| bool|string | true, если блокировка получена, иначе путь к текущей блокировке |
bool unlock(Request $request)
Освобождает блокировку для данного запроса.
Параметры
| Request | $request |
Значение результата
| bool | False, если файл блокировки не существует или не может быть разблокирован, иначе true |
bool isLocked(Request $request)
Возвращает, существует ли блокировка.
Параметры
| Request | $request |
Значение результата
| bool | true, если блокировка существует, иначе false |
Response|null lookup(Request $request)
Ищет кэшированный ответ для предоставленного запроса.
Параметры
| Request | $request |
Значение результата
| Response|null | Экземпляр Response, или null, если запись в кэше не найдена |
string write(Request $request, Response $response)
Записывает запись в кэш для данного запроса и ответа.
Существующие записи считываются, и все записи, соответствующие ответу, удаляются. Этот метод вызывает write с новым списком записей в кэше.
Параметры
| Request | $request | |
| Response | $response |
Значение результата
| string | Ключ, под которым хранится ответ |
Исключения
| RuntimeException |
protected string generateContentDigest(Response $response)
Возвращает хэш содержимого для $response.
Параметры
| Response | $response |
Значение результата
| string |
invalidate(Request $request)
Отменяет все кэшированные записи, соответствующие запросу.
Параметры
| Request | $request |
Исключения
| RuntimeException |
bool purge(string $url)
Удаляет данные для указанного URL.
Этот метод удаляет как HTTP, так и HTTPS версию записи в кэше.
Параметры
| string | $url | URL |
Значение результата
| bool | true, если URL существует и был удален, иначе false |
getPath($key)
Параметры
| $key |
protected string generateCacheKey(Request $request)
Генерирует ключ кэша для данного запроса.
Этот метод должен возвращать ключ, который должен зависеть только от нормализованной версии URI запроса.
Если один и тот же URI может иметь более одного представления, основываясь на некоторых заголовках, используйте заголовок Vary для их указания, и каждое представление будет храниться независимо под тем же ключом кэша.
Параметры
| Request | $request |
Значение результата
| string | Ключ для данного запроса |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
https://api.symfony.com/4.1/Symfony/Component/HttpKernel/HttpCache/Store.html