Mémoire partagée
PHP Manual

Exemples

Exemple #1 Introduction à la mémoire partagée

<?php

// Crée 100 octets de mémoire partagée avec un identifiant système "0xff3"
$shm_id shmop_open(0xff3"c"0644100);
if(!
$shm_id) {
  echo 
"Impossible de créer la mémoire partagée\n";
}

// Lire la taille de la mémoire partagée
$shm_size shmop_size($shm_id);
echo 
"Un bloc de SHM de taille " $shm_size " a été créé.\n";

// Ecriture d'une chaîne de test dans ce segment
$shm_bytes_written shmop_write($shm_id"Mon bloc de mémoire partagée"0);
if (
$shm_bytes_written != strlen("Mon bloc de mémoire partagée")) {
  echo 
"Impossible d'écrire toutes les données en mémoire\n";
}

// Lecture du segment
$my_string shmop_read($shm_id0$shm_size);
if(!
$my_string) {
  echo 
"Impossible de lire toutes les données en mémoire\n";
}
echo 
"Les données mises en mémoire partagées sont : " $my_string "\n";

// Maintenant, effaçons le bloc, et fermons le segment de mémoire
if(!shmop_delete($shm_id)) {
  echo 
"Impossible d'effacer le segment de mémoire";
}
shmop_close($shm_id);

?>


Mémoire partagée
PHP Manual