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.0 and above