shmop_write

共有メモリブロックにデータを書き込む

説明

int shmop_write(Shmop $shmop, string $data, int $offset)

shmop_write は、共有メモリブロックに文字列を書き込みます。

パラメータ

shmop

shmop_open で作られた共有メモリブロックの識別子。

data

共有メモリブロックに書き込む文字列

offset

共有メモリセグメント内部のどこから、データを書き始めるかを指定します。 この値は 0 以上、かつ共有メモリセグメントの実際のサイズ以下でなければいけません。

戻り値

書き込んだ data のサイズを返します。

エラー / 例外

offset が範囲外の値の場合、 または読み取り専用の共有メモリセグメントに書き込んだ場合、 ValueError がスローされます。

変更履歴

バージョン 説明
8.0.0 PHP 8.0.0 より前のバージョンでは、 失敗した時に false を返していました。
8.0.0 引数 shmop は、 Shmop クラスのインスタンスを期待するようになりました。 これより前のバージョンでは、リソースが期待されていました。

例1 共有メモリブロックに書き込む

<?php
$shm_bytes_written = shmop_write($shm_id, $my_string, 0);
?>

この例は、$my_string にあるデータを共有メモリブロックに書き込みます。 $shm_bytes_written には、書かれたデータのバイト数が入ります。

参考

  • shmop_read