HTTP Functions
http_cache_last_modified
HTTP Functions
PHP Manual

# 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