php-doc-en/reference/shmop/reference.xml
Friedhelm Betz ba44d514f6 move windows information to seperate note.
web server module instead SAPI, thx derick


git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@157076 c90b9560-bf6c-de11-be94-00142212c4b1
2004-04-25 13:59:04 +00:00

121 lines
2.9 KiB
XML

<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.14 $ -->
<reference id="ref.shmop">
<title>Shared Memory Functions</title>
<titleabbrev>shmop</titleabbrev>
<partintro>
<section id="shmop.intro">
&reftitle.intro;
<para>
Shmop is an easy to use set of functions that allows PHP to read,
write, create and delete Unix shared memory segments.
</para>
<note>
<simpara>
Versions of Windows previous to Windows 2000 do not support shared memory.
Under Windows, Shmop will only work when PHP is running as a web server
module, such as Apache or IIS (CLI and CGI will not work).
</simpara>
</note>
<note>
<simpara>
In PHP 4.0.3, these functions were prefixed by <literal>shm</literal>
rather than <literal>shmop</literal>.
</simpara>
</note>
</section>
<section id="shmop.requirements">
&reftitle.required;
&no.requirement;
</section>
&reference.shmop.configure;
<section id="shmop.configuration">
&reftitle.runtime;
&no.config;
</section>
<section id="shmop.resources">
&reftitle.resources;
<para>
</para>
</section>
<section id="shmop.constants">
&reftitle.constants;
&no.constants;
</section>
<section id="shmop.examples">
&reftitle.examples;
<para>
<example>
<title>Shared Memory Operations Overview</title>
<programlisting role="php">
<![CDATA[
<?php
// Create 100 byte shared memory block with system id if 0xff3
$shm_id = shmop_open(0xff3, "c", 0644, 100);
if (!$shm_id) {
echo "Couldn't create shared memory segment\n";
}
// Get shared memory block's size
$shm_size = shmop_size($shm_id);
echo "SHM Block Size: " . $shm_size . " has been created.\n";
// Lets write a test string into shared memory
$shm_bytes_written = shmop_write($shm_id, "my shared memory block", 0);
if ($shm_bytes_written != strlen("my shared memory block")) {
echo "Couldn't write the entire length of data\n";
}
// Now lets read the string back
$my_string = shmop_read($shm_id, 0, $shm_size);
if (!$my_string) {
echo "Couldn't read from shared memory block\n";
}
echo "The data inside shared memory was: " . $my_string . "\n";
//Now lets delete the block and close the shared memory segment
if (!shmop_delete($shm_id)) {
echo "Couldn't mark shared memory block for deletion.";
}
shmop_close($shm_id);
?>
]]>
</programlisting>
</example>
</para>
</section>
</partintro>
&reference.shmop.functions;
</reference>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->