cache statique

cache statique

En d'autres termes

cache dans une variable statique

Définition

Technique d'accélération couramment utilisée dans les scripts PHP, consistant à conserver dans une variable statique d'une fonction une donnée calculée lors de la première invocation de celle-ci, pour éviter d'avoir à la recalculer.

La donnée peut être un simple résultat, ou construite au fil des appels successifs à la fonction, comme dans l'exemple suivant.

Exemple

L'exemple suivant est tiré du CMS Drupal 6.9, fichier includes/menu.inc version 1.255.2.27.

<?php
/**
* Build a list of named menus.
*/
function menu_get_names($reset = FALSE) {
  static
$names;

  if (
$reset || empty($names)) {
   
$names = array();
   
$result = db_query("SELECT DISTINCT(menu_name) FROM {menu_links} ORDER BY menu_name");
    while (
$name = db_fetch_array($result)) {
     
$names[] = $name['menu_name'];
    }
  }
  return
$names;
}
?>

Cette construction tire parti du fait que les variables statiques en PHP sont initialisées à la valeur NULL, qui ne peut plus survenir lorsque la fonction a déjà placé un contenu dans la variable lors d'une invocation ultérieure, les appels successifs à la fonction tranformant cette variable en tableau et lui ajoutant des lignes.

Dans cet exemple, la présence du paramètre $reset fournit un moyen de réinitialiser le cache.

Get started with Drupal 7

Marques les plus citées

toutes les marques

acheter sur OSInet

Accès direct

Recherche

Le mot du jour

Xeon

in | |

Marque utilisée par Intel pour ses processeurs optimisés pour les serveurs, depuis le Pentium II. En comparaison avec les processeurs pour machines de bureau, les Xeon disposent typiquement de ca… 

Syndiquer le contenu

Dernières définitions

Chrome - Chromium - digitaalinen kuilu - ghetto sharding - HTTP - MongoDB - PNaCl - QUIC - Skia - SPDY

Un mot au hasard

WECA : Wireless Ethernet Compatibility Alliance  

Alertes CERTA