PHP.mk документација

shmop_read

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

function.shmop-read.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека function.shmop-read.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
shmop_read

Референца за `function.shmop-read.php` со подобрена типографија и навигација.

function.shmop-read.php

shmop_read

(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)

shmop_readЧитај податоци од блок на споделена меморија

= NULL

shmop_read() ќе прочита стринг од блок на споделена меморија.

Параметри

shmop
ќе запише стринг во блок за споделена меморија. shmop_open()
offset
Поместување од кое да се започне со читање; мора да биде поголемо или еднакво на нула и помало или еднакво на реалната големина на сегментот на споделена меморија.
size
Бројот на бајти за читање; мора да биде поголем или еднаков на нула, и збирот на offset and size мора да биде помал или еднаков на реалната големина на сегментот на споделена меморија. 0 reads shmop_size($shmid) - $start bytes.

Вратени вредности

Враќа податоци.

Errors/Exceptions

Враќа offset or size се надвор од опсег, а ValueError се фрла.

Дневник на промени

Верзија = NULL
8.0.0 shmop беше вратено при неуспех. Функции за споделена меморија инстанца сега; претходно, а resource се очекуваше.
8.0.0 Враќа offset or size се надвор од опсег, а ValueError се фрла; претходно E_WARNING беше емитувано, и false беше вратено,

Примери

Пример #1 Читање блок на споделена меморија

<?php
$shm_data
= shmop_read($shm_id, 0, 50);
?>

Овој пример ќе прочита 50 бајти од блок на споделена меморија и ќе ги смести податоците внатре $shm_data.

Види Исто така

  • shmop_write() - Запиши податоци во блок на споделена меморија

Белешки од корисници 4 белешки

Крег Менли
21 години пред
shmop_read() reads and returns the whole memory segment's data. This is not useful if you're just working with strings. If you need to read a string from shared memory, call str_from_mem() on the result of shmop_read(). Similarly when writing strings to memory (instead of binary data), null terminate your strings with str_to_nts() before passing the value on to shmop_write().

function str_to_nts($value) {
  return "$value\0";
}

function str_from_mem(&$value) {
  $i = strpos($value, "\0");
  if ($i === false) {
    return $value;
  }
  $result =  substr($value, 0, $i);
  return $result;
}
macmaster на pobox точка com
figroc at gmail dot com
When i need to read the whole string at that shm pointer, setting the count parameter to zero (0) seems work for me.
michael точка wuertz на six точка de
пред 4 години
With shmop_read, you probably get a "\0" - padded string.

$zero_padded = shmop_read($shm_seg, 0, 128);

$usable_string = rtrim($zero_padded, "\0");
slavapl на mailandnews точка com
figroc at gmail dot com
Also you can use the shmop_size() function to determine the block size.
Навигација

Прелистувај сродни теми и функции.

На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.