array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ja', ), 'this' => array ( 0 => 'function.shmop-write.php', 1 => 'shmop_write', ), 'up' => array ( 0 => 'ref.shmop.php', 1 => '共有メモリ関数', ), 'prev' => array ( 0 => 'function.shmop-size.php', 1 => 'shmop_size', ), 'next' => array ( 0 => 'class.shmop.php', 1 => 'Shmop', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ja', 'path' => 'reference/shmop/functions/shmop-write.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)
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
には、書かれたデータのバイト数が入ります。