cynic Mon Feb 5 04:46:49 2001 EDT
Added files:
/phpdoc/cs/functions shmop.xml
Log:
should be completely translated
Index: phpdoc/cs/functions/shmop.xml
+++ phpdoc/cs/functions/shmop.xml
<reference id="ref.shmop">
<title>Funkce pro pr�ci se sd�lenou pam�t�</title>
<titleabbrev>shmop</titleabbrev>
<partintro>
<para>
Shmop snadno pou�iteln� sada funkc�, kter� PHP umo��uje ��st, zapisovat,
vytv��et a mazat segmenty UNIXov� sd�len� pam�ti. Tyto funkce na Windows
nefunguj�, proto�e tento syst�m nepodporuje sd�lenou pam�. Pokud chcete
shmop pou��vat, budete muset PHP zkompilovat s <option
role="configure">--enable-shmop</option>.
</para>
<note>
<simpara>
N�zvy funkc� popisovan�ch v t�to kapitole za��naj� v PHP 4.0.3 na
<function>shm_</function>, ale od PHP 4.0.4 se jejich n�zvy zm�nily na
<function>shmop_</function>.
</simpara>
</note>
<para>
<example>
<title>P�ehled operac� se sd�lenou pam�t�</title>
<programlisting role="php">
<?php
// Vytvo�it 100 bytov� blok sd�len� pam�ti se system id 0xff3
$shm_id = shmop_open(0xff3, "c", 0644, 100);
if(!$shm_id) {
echo "Nepoda�ilo se vytvo�it segment sd�len� pam�ti\n";
}
// Zjistit velikost bloku sd�len� pam�ti
$shm_size = shmop_size($shm_id);
echo "SHM blok o velikosti : ".$shm_size. " byl vytvo�en.\n";
// Zap��eme do sd�len� pam�ti zku�ebn� �et�zec
$shm_bytes_written = shmop_write($shm_id, "my shared memory block", 0);
if($shm_bytes_written != strlen("m�j blok sd�len� pam�ti")) {
echo "Nepoda�ilo se zapsat kompletn� data\n";
}
// Na�teme �et�zec zp�tky
$my_string = shmop_read($shm_id, 0, $shm_size);
if(!$my_string) {
echo "Nepoda�ilo se ��st z bloku sd�len� pam�ti\n";
}
echo "Data ve sd�len� pam�ti byla: ".$my_string."\n";
//Sma�eme tento blok a zav�eme segment sd�len� pam�ti
if(!shmop_delete($shm_id)) {
echo "Nepoda�ilo se smazat blok sd�len� pam�ti.";
}
shmop_close($shm_id);
?>
</programlisting>
</example>
</para>
</partintro>
<refentry id="function.shmop_open">
<refnamediv>
<refname>shmop_open</refname>
<refpurpose>Vytvo�it nebo otev��t blok sd�len� pam�ti</refpurpose>
</refnamediv>
<refsect1>
<title>Popis</title>
<funcsynopsis>
<funcprototype>
<funcdef>int <function>shmop_open</function></funcdef>
<paramdef>int <parameter>key</parameter></paramdef>
<paramdef>string <parameter>flags</parameter></paramdef>
<paramdef>int <parameter>mode</parameter></paramdef>
<paramdef>int <parameter>size</parameter></paramdef>
</funcprototype>
</funcsynopsis>
<para>
<function>shmop_open</function> vytvo�� nebo otev�e blok sd�len� pam�ti.
</para>
<para>
<function>shmop_open</function> p�ij�m� 4 argumenty: kl��, co� je system id
bloku sd�len� pam�ti; tento argument m��e b�t p�ed�n jako des�tkov� nebo
hexadecim�ln� ��slo. Druh� argument jsou parametry:
<itemizedlist>
<listitem>
<simpara>
"a" pro p��stup (nastavuje IPC_EXCL)
tento parametr pou�ijte, pokud chcete otev��t existuj�c� segment sd�len�
pam�ti
</simpara>
</listitem>
<listitem>
<simpara>
"c" pro vytvo�en� (nastavuje IPC_CREATE)
tento parametr pou�ijte, pokud chcete vytvo�it nov� segment sd�len� pam�ti
</simpara>
</listitem>
</itemizedlist>
T�et� argument je m�d, co� jsou p��stupov� pr�va, kter� chcete tomuto
segmentu p�i�adit; jsou stejn� jako pr�va pro soubory. P��stupov� pr�va
mus� b�t p�ed�na jako oktalov� ��slo, nap�. 0644. Posledn� argument je
velikost bloku sd�len� pam�ti, kter� chcete vytvo�it, v bytech.
<note><simpara>
Pozn.: Pokud otv�r�te existuj�c� segment pam�ti, 3. 4. argument by m�ly b�t
p�ed�ny jako 0. P�i �sp�chu <function>shmop_open</function> vrac� id,
kter� m��ete pou��t k p��stupu na tento segment sd�len� pam�ti.
</simpara></note>
</para>
<para>
<example>
<title>Vytvo�en� bloku sd�len� pam�ti</title>
<programlisting role="php">
<?php
$shm_id = shmop_open(0x0fff, "c", 0644, 100);
?>
</programlisting>
</example>
</para>
<para>
Tato uk�zka otev�ela blok sd�len� pam�ti se system id 0x0fff.
</para>
</refsect1>
</refentry>
<refentry id="function.shmop_read">
<refnamediv>
<refname>shmop_read</refname>
<refpurpose>P�e��st data z bloku sd�len� pam�ti</refpurpose>
</refnamediv>
<refsect1>
<title>Popis</title>
<funcsynopsis>
<funcprototype>
<funcdef>string <function>shmop_read</function></funcdef>
<paramdef>int <parameter>shmid</parameter></paramdef>
<paramdef>int <parameter>start</parameter></paramdef>
<paramdef>int <parameter>count</parameter></paramdef>
</funcprototype>
</funcsynopsis>
<para>
<function>shmop_read</function> �te �et�zec z bloku sd�len� pam�ti.
</para>
<para>
<function>shmop_read</function> p�ij�m� 3 argumenty:
<parameter>shmid</parameter>, co� je id bloku sd�len� pam�ti vytvo�en�ho
funkc� <function>shmop_open</function>, <parameter>start</parameter>, co�
je offset na kter�m m� �ten� za��t, a <parameter>count</parameter>, co� je
po�et byt�, kter� se maj� p�e��st.
</para>
<para>
<example>
<title>�ten� bloku sd�len� pam�ti</title>
<programlisting role="php">
<?php
$shm_data = shmop_read($shm_id, 0, 50);
?>
</programlisting>
</example>
</para>
<para>
Tato uk�zka p�e�te z bloku sd�len� pam�ti 50 byt� a um�st� na�ten� data
do <literal>$shm_data</literal>.
</para>
</refsect1>
</refentry>
<refentry id="function.shmop_write">
<refnamediv>
<refname>shmop_write</refname>
<refpurpose>Zapsat data do bloku sd�len� pam�ti</refpurpose>
</refnamediv>
<refsect1>
<title>Popis</title>
<funcsynopsis>
<funcprototype>
<funcdef>int <function>shmop_write</function></funcdef>
<paramdef>int <parameter>shmid</parameter></paramdef>
<paramdef>string <parameter>data</parameter></paramdef>
<paramdef>int <parameter>offset</parameter></paramdef>
</funcprototype>
</funcsynopsis>
<para>
<function>shmop_write</function> zap��e �et�zec do bloku sd�len� pam�ti.
</para>
<para>
<function>shmop_write</function> p�ij�m� 3 argumenty:
<parameter>shmid</parameter>, co� je id bloku sd�len� pam�ti vytvo�en�ho
funkc� <function>shmop_open</function>, <parameter>data</parameter>, co� je
�et�zec, kter� se zap��e do bloku sd�len� pam�ti, a
<parameter>offset</parameter>, co� je offset na kter�m m� z�pis za��t.
</para>
<para>
<example>
<title>Z�pis do bloku sd�len� pam�ti</title>
<programlisting role="php">
<?php
$shm_bytes_written = shmop_write($shm_id, $my_string, 0);
?>
</programlisting>
</example>
</para>
<para>
Tato uk�zka zap��e data obsa�en� v <literal>$my_string</literal> do bloku
sd�len� pam�ti, a <literal>$shm_bytes_written</literal> obsahuje po�et
zapsan�ch byt�.
</para>
</refsect1>
</refentry>
<refentry id="function.size">
<refnamediv>
<refname>shmop_size</refname>
<refpurpose>Zjistit velikost bloku sd�len� pam�ti</refpurpose>
</refnamediv>
<refsect1>
<title>Popis</title>
<funcsynopsis>
<funcprototype>
<funcdef>int <function>shmop_size</function></funcdef>
<paramdef>int <parameter>shmid</parameter></paramdef>
</funcprototype>
</funcsynopsis>
<para>
<function>shmop_size</function> se pou��v� ke zji�t�n� velikosti bloku
sd�len� pam�ti v bytech.
</para>
<para>
<function>shmop_size</function> p�ij�m� <parameter>shmid</parameter>, co� je
idenfifik�tor vytvo�en� funkc� <function>shmop_open</function>.
<function>shmop_size</function> vrac� integer p�edstavuj�c� po�et byt�,
kter� blok sd�len� pam�ti zab�r�.
</para>
<para>
<example>
<title>Zji�t�n� velikosti bloku sd�len� pam�ti</title>
<programlisting role="php">
<?php
$shm_size = shmop_size($shm_id);
?>
</programlisting>
</example>
</para>
<para>
Tato uk�zka zap��e velikost bloku sd�len� pam�ti ur�en�ho identifik�torem
<literal>$shm_id</literal> do <literal>$shm_size</literal>.
</para>
</refsect1>
</refentry>
<refentry id="function.shmop_delete">
<refnamediv>
<refname>shmop_delete</refname>
<refpurpose>Smazat blok sd�len� pam�ti</refpurpose>
</refnamediv>
<refsect1>
<title>Popis</title>
<funcsynopsis>
<funcprototype>
<funcdef>int <function>shmop_delete</function></funcdef>
<paramdef>int <parameter>shmid</parameter></paramdef>
</funcprototype>
</funcsynopsis>
<para>
<function>shmop_delete</function> se pou��v� ke smaz�n� bloku sd�len� pam�ti.
</para>
<para>
<function>shmop_delete</function> p�ij�m� <parameter>shmid</parameter>,
co� je identifik�tor bloku sd�len� pam�ti vytvo�en� funkc�
<function>shmop_open</function>. P�i �sp�chu vrac� 1, jinak 0.
</para>
<para>
<example>
<title>Smaz�n� bloku sd�len� pam�ti</title>
<programlisting role="php">
<?php
shmop_delete($shm_id);
?>
</programlisting>
</example>
</para>
<para>
Tato uk�zka sma�e blok sd�len� pam�ti pojmenovan� <literal>$shm_id</literal>.
</para>
</refsect1>
</refentry>
<refentry id="function.shmop_close">
<refnamediv>
<refname>shmop_close</refname>
<refpurpose>Zav��t blok sd�len� pam�ti</refpurpose>
</refnamediv>
<refsect1>
<title>Popis</title>
<funcsynopsis>
<funcprototype>
<funcdef>int <function>shmop_close</function></funcdef>
<paramdef>int <parameter>shmid</parameter></paramdef>
</funcprototype>
</funcsynopsis>
<para>
<function>shmop_close</function> se pou��v� k zav�en� bloku sd�len� pam�ti.
</para>
<para>
<function>shmop_close</function> p�ij�m� <parameter>shmid</parameter>,
co� je identifik�tor bloku sd�len� pam�ti vytvo�en� funkc�
<function>shmop_open</function>.
</para>
<para>
<example>
<title>Zav�en� bloku sd�len� pam�ti</title>
<programlisting role="php">
<?php
shmop_close($shm_id);
?>
</programlisting>
</example>
</para>
<para>
Tato uk�zka zav�e blok sd�len� pam�ti pojmenovan� <literal>$shm_id</literal>.
</para>
</refsect1>
</refentry>
</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
sgml-parent-document:nil
sgml-default-dtd-file:"../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->