(PHP 4 >= 4.0.4, PHP 5)
shmop_open — 共有メモリブロックを作成またはオープンする
$key
, string $flags
, int $mode
, int $size
)shmop_open() は共有メモリブロックを作成または オープンします。
key
共有メモリブロックのシステム ID であり、10 進数または 16 進数で指定することが可能です。
flags
フラグに設定できる内容は、次のとおりです。
mode
共有メモリセグメントに設定したい 許可属性で、ファイルに関する許可属性と同様なものです。許可属性は、 例えば 0644 のような 8 進数形式で渡す必要があります。
size
作成したい共有メモリブロックの大きさをバイト数で指定します。
注意:
注意: 既存のメモリセグメントをオープンする場合には、3 番目および 4 番目の引数には 0 を指定する必要があります。成功時に
成功した場合は、 shmop_open() は
作成した共有メモリセグメントにアクセスするために使用する ID を返します。
失敗した場合に FALSE
を返します。
例1 共有メモリブロックを新規に作成する
<?php
$shm_key = ftok(__FILE__, 't');
$shm_id = shmop_open($shm_key, "c", 0644, 100);
?>
この例は、 ftok() が返すシステム ID の共有メモリブロックをオープンします。