(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)
shmop_open — Create or open shared memory block
shmop_open() can create or open a shared memory block.
key
System's id for the shared memory block. Can be passed as a decimal or hex.
mode
The flags that you can use:
permissions
The permissions that you wish to assign to your memory segment, those
are the same as permission for a file. Permissions need to be passed
in octal form, like for example 0644
size
The size of the shared memory block you wish to create in bytes
Note:
Note: the 3rd and 4th should be entered as 0 if you are opening an existing memory segment.
On success shmop_open() will return a Shmop instance that you can
use to access the shared memory segment you've created. false
is
returned on failure.
If mode
is invalid, or size
is less than or equal to zero,
a ValueError is thrown.
On other failures, E_WARNING
is emitted.
Version | Description |
---|---|
8.0.0 | On success, this function returns an Shmop instance now; previously, a resource was returned. |
8.0.0 |
If mode is invalid, or size is less than or equal to zero,
a ValueError is thrown; previously E_WARNING was emitted instead,
and the function returned false .
|
Example #1 Create a new shared memory block
<?php
$shm_key = ftok(__FILE__, 't');
$shm_id = shmop_open($shm_key, "c", 0644, 100);
?>
This example opened a shared memory block with a system id returned by ftok().