http_cache_etag

(PECL)

http_cache_etag -- Caching by ETag

Description

bool http_cache_etag ( [string etag] )

Attempts to cache the sent entity by its ETag, either supplied or generated by the hash algorithm specified by the INI setting http.etag.mode.

If the clients If-None-Match header matches the supplied/calculated ETag, the body is considered cached on the clients side and a 304 Not Modified status code is issued.

A log entry is written to the cache log if the INI setting http.log.cache is set and the cache attempt was successful.

Note: This function may be used in conjunction with http_send_data(), http_send_file() and http_send_stream().

If this function is used outside the http_send_*() API, it facilitates the ob_etaghandler().

Parameters

etag

custom ETag

Return Values

Returns FALSE or exits on success with 304 Not Modified if the entity is cached. See the INI setting http.force_exit for what "exits" means.

Examples

Example 1. A http_cache_etag() example

<?php
http_cache_etag
();
http_send_data("data");
?>

See Also

http_cache_last_modified()
ob_etaghandler()
http_match_etag()
the HttpResponse class if you are using PHP-5.1 and above