Application Level Variables

This is a method to share a variable across multiple PHP processes using shared memory. The variables will be persistent global variables.

 
$semaphoreId = 100;
$segId = 200;
 
// get a handle to the semaphore
$sem = sem_get($semId, 1, 0600);
// ensure exclusive access...
sem_acquire($sem) or die('Cannot acqire semaphore');
// get a handle to the shared memory sized 16k
$shm = shm_attach($segId, 16386, 0600);
// get a value from memory...
$var = shm_get_var($shm, 'myVar');
 
// change the value however you like...
$var++;
 
// save it back to memory
shm_put_var($shm, 'myVar', $var);
 
// cleanup
shm_detach($shm);
sem_release($sem);