array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'function.shmop-write.php', 1 => 'shmop_write', ), 'up' => array ( 0 => 'ref.shmop.php', 1 => 'Разделяемая (shared) память', ), 'prev' => array ( 0 => 'function.shmop-size.php', 1 => 'shmop_size', ), 'next' => array ( 0 => 'class.shmop.php', 1 => 'Shmop', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', '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_write() записывает строковые данные в участок разделяемой памяти.
shmop
Ресурс блока памяти, возвращаемый функцией shmop_open()
data
Строковые данные для размещения в памяти
offset
Определяет, в каком месте участка памяти следует начать запись данных. Смещение должно быть больше или равно нулю и меньше или равно фактическому размеру сегмента разделяемой памяти.
Размер записанных данных, переданных через параметр
data
.
Если параметр offset
находится вне диапазона
или в сегмент разделяемой памяти, доступный только для чтения, должна быть произведена запись,
будет выброшена ошибка ValueError.
Версия | Описание |
---|---|
8.0.0 |
До PHP 8.0.0 в случае возникновения ошибки возвращалось false .
|
8.0.0 |
Параметр shmop ожидает экземпляр Shmop; ранее ожидался ресурс (resource).
|
Пример #1 Запись данных в участок разделяемой памяти
<?php
$shm_bytes_written = shmop_write($shm_id, $my_string, 0);
?>
В данном примере в память помещается содержимое строковой переменной
$my_string
, после чего переменная
$shm_bytes_written
будет содержать размер фактически
записанных данных.