eschmid         Sat Jun  9 04:35:00 2001 EDT

  Modified files:              
    /phpdoc/de/functions        shmop.xml 
  Log:
  Translation by Cornelia Boenigk,
  
Index: phpdoc/de/functions/shmop.xml
diff -u /dev/null phpdoc/de/functions/shmop.xml:1.5
--- /dev/null   Sat Jun  9 04:35:00 2001
+++ phpdoc/de/functions/shmop.xml       Sat Jun  9 04:35:00 2001
@@ -0,0 +1,355 @@
+<reference id="ref.shmop">
+  <title>Shared Memory Funktionen (Gemeinsamer Speicher)</title>
+  <titleabbrev>shmop</titleabbrev>
+
+  <partintro>
+   <para>
+    Shmop ist eine Sammlung einfach anzuwendender PHP-Funktionen,
+    mit denen man mit PHP UNIX shared-memory-Segmente beschreiben,
+    auslesen und löschen kann. Die Funktionen können mit Windows nicht
+    eingesetzt werden, weil Windows keinen gemeinsamen Speicher
+    unterstützt.
+    Um shmop zu nutzen, müssen Sie PHP mit der Option --enable-shmop
+    in der Konfiguratinszeile kompilieren.
+   </para>
+   <note>
+    <simpara>
+     Die Funktionen, die in diesem Kapitel erklärt werden, beginnen
+     in PHP 4.0.3 alle mit <function>shm_</function> , aber ab Version
+     PHP 4.0.4 und grösser, wurden diese Namen geändert und beginnen
+     nun mit <function>shmop_</function>.
+    </simpara>
+   </note>
+   <para>
+    <example>
+     <title>Shared Memory Operationen - Übersicht</title>
+     <programlisting role="php">
+&lt;?php
+
+// Erstelle einen 100 Byte grossen gemeinsam genutzten Speicherblock
+// mit mit der System_ID if 0xff3
+$shm_id = shmop_open(0xff3, "c", 0644, 100);
+if(!$shm_id) {
+        echo "Konnte kein gemeinsames Speichersegment erstellen\n";
+}
+
+// Hole die Grösse des gemeinsamen Speicherblocks
+$shm_size = shmop_size($shm_id);
+echo "SHM Block mit: ".$shm_size. " Bytes wurde erstellt.\n";
+
+// Teststring in den gemeinsamen Speicher schreiben
+$shm_bytes_written = shmop_write($shm_id, "mein gemeinsamer Speicher", 0);
+if($shm_bytes_written != strlen("mein gemeinsamer Speicher")) {
+        echo "Konnte nicht ermitteln, wieviele Bytes geschrieben wurden\n";
+}
+
+// Den Teststring wieder auslesen
+$my_string = shmop_read($shm_id, 0, $shm_size);
+if(!$my_string) {
+        echo "Konnte nicht aus dem gemeinsamen Speicher lesen\n";
+}
+echo "Die Daten im gemeinsamen Speicher waren: ".$my_string."\n";
+
+// Den Speicherblock löschen und den gemeinsamen Speicher schliessen
+if(!shmop_delete($shm_id)) {
+        echo "Konnte den gemeinsamen Speicherblock nicht zum Löschen markieren.";
+}
+shmop_close($shm_id);
+
+?&gt;
+     </programlisting>
+    </example>
+   </para>
+  </partintro>
+
+  <refentry id="function.shmop_open">
+   <refnamediv>
+    <refname>shmop_open</refname>
+    <refpurpose>Erstellt oder öffnet einen gemeinsamen Speicherblock</refpurpose>
+   </refnamediv>
+   <refsect1>
+    <title>Beschreibung</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> Kann einen gemeinsamen Speicherbereich erstellen 
+oder öffnen
+    </para>
+    <para>
+     <function>shmop_open</function> benötigt 4 Parameter: key, die System-ID
+     des gemeinsam genutzten Speicherblocks, dieser Parameter kann als
+     Dezimal- oder Hexadezimalzahl übergeben werden. Der zweite Parameter
+     bezeichnet die Flags, die man benutzen kann:
+     <itemizedlist>
+      <listitem>
+       <simpara>
+        "a" zum Zugriff (access) auf einen gemeinsamen Speicherblock (setzt IPC_EXCL)
+        Benutzen Sie dieses Flag, wenn Sie einen bestehenden gemeinsamen
+        Speicherblock öffnen wollen.
+       </simpara>
+      </listitem>
+      <listitem>
+       <simpara>
+        "c" zum Erstellen (create) eines gemeinsamen Speicherblocks (setzt IPC_CREATE)
+        Benutzen Sie dieses Flag, wenn Sie einen gemeinsamen Speicherblock
+        erstellen wollen.
+       </simpara>
+      </listitem>
+     </itemizedlist>
+     Der dritte Parameter ist der Modus, der die Zugriffsrechte, die Sie
+     dem gemeinsamen Speicher zuweisen wollen, angibt. Das sind dieselben
+     Zugriffsrechte wie für Dateien. Zugriffsrechte müssen oktal angegeben
+     werden, z.B. 0644. Der letzte Parameter gibt die Grösse des
+     gemeinsamen Speichers, den Sie erstellen wollen, in Byte an, .
+     <note><simpara>
+      Beachten Sie: Der dritte und vierte Parameter muss als 0 angegeben
+      werden, wenn Sie ein existierendes gemeinsames Speichersegment
+      öffnen wollen. Bei Erfolg liefert die Funktion
+      <function>shmop_open</function> eine ID zurück, die Sie zum Zugriff
+      auf den erstellten gemeinsamen Speicher benutzen können.
+     </simpara></note>
+    </para>
+    <para>
+     <example>
+      <title>Einen neuen gemeinsmen Speicherblock erstellen</title>
+      <programlisting role="php">
+&lt;?php
+$shm_id = shmop_open(0x0fff, "c", 0644, 100);
+?&gt;
+      </programlisting>
+     </example>
+    </para>
+    <para>
+     In diesem Beispiel wurde ein gemeinsamer Speicherblock mit der
+     System-ID 0x0fff erstellt.
+    </para>
+   </refsect1>
+  </refentry>
+
+  <refentry id="function.shmop_read">
+   <refnamediv>
+    <refname>shmop_read</refname>
+    <refpurpose>Daten aus dem gemeinsamen Speicherblock auslesen</refpurpose>
+   </refnamediv>
+   <refsect1>
+    <title>Beschreibung</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> liest einen String aus dem gemeinsamen Speicher.
+    </para>
+    <para>
+     <function>shmop_read</function> braucht 3 Parameter: shmid, die Kennung
+     des gemeinsamen Speicherblocks, der mit <function>shmop_open</function>
+     erzeugt wurde, start gibt den Offset an, von wo ab gelesen werden soll
+     und count gibt die Anzahl der zu lesenden Bytes an.
+    </para>
+    <para>
+     <example>
+      <title>Aus dem gemeinsamen Speicher lesen</title>
+      <programlisting role="php">
+&lt;?php
+$shm_data = shmop_read($shm_id, 0, 50);
+?&gt;
+      </programlisting>
+     </example>
+    </para>
+    <para>
+     In diesem Beispiel werden 50 Bytes aus dem gemeinsamen Speicherblock
+     in die Variable <literal>$shm_data</literal> eingelesen.
+    </para>
+   </refsect1>
+  </refentry>
+
+  <refentry id="function.shmop_write">
+   <refnamediv>
+    <refname>shmop_write</refname>
+     <refpurpose>Schreibt Daten in einen gemeinsamen Speicherblock</refpurpose>
+    </refnamediv>
+    <refsect1>
+     <title>Beschreibung</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> schreibt Daten in einen gemeinsamen
+      Speicherbereich.
+     </para>
+     <para>
+      <function>shmop_write</function> braucht 3 Parameter:shmid, die Kennung
+      des gemeinsamen Speicherblocks, der mit <function>shmop_open</function>
+      erzeugt wurde, data, ein String, der in den gemeinsamen Speicher
+      geschrieben werden soll und offset, der angibt, von wo ab in den
+      gemeinsamen Speicherblock geschrieben werden soll.
+     </para>
+     <para>
+      <example>
+      <title>In den gemeinsamen Speicher schreiben</title>
+      <programlisting role="php">
+&lt;?php
+$shm_bytes_written = shmop_write($shm_id, $my_string, 0);
+?&gt;
+      </programlisting>
+     </example>
+    </para>
+    <para>
+     In diesem Beispiel werden die Daten der Variablen <literal>$my_string</literal>
+     in den gemeinsamen Speicherblock geschrieben. Die Variable
+     <literal>$shm_bytes_written</literal> enthält die Anzahl der geschriebenen Bytes.
+    </para>
+   </refsect1>
+  </refentry>
+
+  <refentry id="function.size">
+  <refnamediv>
+   <refname>shmop_size</refname>
+   <refpurpose>Liefert die Grösse des gemeinsamen Speicherblocks</refpurpose>
+  </refnamediv>
+  <refsect1>
+   <title>Beschreibung</title>
+   <funcsynopsis>
+    <funcprototype>
+     <funcdef>int <function>shmop_size</function></funcdef>
+     <paramdef>int <parameter>shmid</parameter></paramdef>
+    </funcprototype>
+    </funcsynopsis>
+    <para>
+     <function>shmop_size</function> wird benutzt, um die Grösse eines gemeinsamen
+     Speicherblocks in Byte zu ermitteln.
+    </para>
+    <para>
+     <function>shmop_size</function> benötigt shmid, die Kennung
+     des gemeinsamen Speicherblocks, der mit <function>shmop_open</function>
+     erzeugt wurde. Die Funktion liefert einen Integerwert zurück, welcher
+     angibt, wieviele Bytes von dem gemeinsamen Speicher belegt werden.
+    </para>
+    <para>
+     <example>
+      <title>Die Grösse des gemeinsamen Speicherblocks ermitteln</title>
+      <programlisting role="php">
+&lt;?php
+$shm_size = shmop_size($shm_id);
+?&gt;
+      </programlisting>
+     </example>
+    </para>
+    <para>
+     In dem Beispiel erhält die Variable <literal>$shm_size</literal>
+     die Grösse des durch <literal>$shm_id</literal> bezeichneten
+     gemeinsmen Speicherblocks in Byte.
+    </para>
+   </refsect1>
+  </refentry>
+
+  <refentry id="function.shmop_delete">
+   <refnamediv>
+    <refname>shmop_delete</refname>
+    <refpurpose>Einen gemeinsamen Speicherblock löschen</refpurpose>
+   </refnamediv>
+   <refsect1>
+    <title>Beschreibung</title>
+    <funcsynopsis>
+     <funcprototype>
+      <funcdef>int <function>shmop_delete</function></funcdef>
+      <paramdef>int <parameter>shmid</parameter></paramdef>
+     </funcprototype>
+    </funcsynopsis>
+    <para>
+     <function>shmop_delete</function> wird benutzt, um einen gemeinsamen
+     Speicherbereich zu löschen.
+    </para>
+    <para>
+     <function>shmop_delete</function> benötigt shmid, die Kennung
+     des gemeinsamen Speicherblocks, der mit <function>shmop_open</function>
+     erzeugt wurde. Bei Erfolg wird 1 zurückgegeben, bei Scheitern 0.
+    </para>
+    <para>
+     <example>
+      <title>einen gemeinsamen Speicherblock löschen</title>
+      <programlisting role="php">
+&lt;?php
+shmop_delete($shm_id);
+?&gt;
+      </programlisting>
+     </example>
+    </para>
+    <para>
+     In diesem Beispiel wird der gemeinsame Speicherblock mit dem
+     Bezeichner <literal>$shm_id</literal> gelöscht.
+    </para>
+   </refsect1>
+  </refentry>
+
+  <refentry id="function.shmop_close">
+   <refnamediv>
+    <refname>shmop_close</refname>
+    <refpurpose>Schliesst einen gemeinsamen Speicherblock</refpurpose>
+   </refnamediv>
+   <refsect1>
+    <title>Beschreibung</title>
+    <funcsynopsis>
+     <funcprototype>
+      <funcdef>int <function>shmop_close</function></funcdef>
+      <paramdef>int <parameter>shmid</parameter></paramdef>
+     </funcprototype>
+    </funcsynopsis>
+    <para>
+     <function>shmop_close</function> wird benutzt, um einen gemeinsamen
+     Speicherblock zu schliessen.
+    </para>
+    <para>
+     <function>shmop_close</function>benötigt shmid, die Kennung
+     des gemeinsamen Speicherblocks, der mit <function>shmop_open</function>
+     erzeugt wurde.
+    </para>
+    <para>
+     <example>
+      <title>Einen gemeinsamen Speicherblock schliessen</title>
+      <programlisting role="php">
+&lt;?php
+shmop_close($shm_id);
+?&gt;
+      </programlisting>
+     </example>
+    </para>
+    <para>
+     In diesem Beispiel wird der gemeinsame Speicherblock mit dem Bezeichner
+     <literal>$shm_id</literal> geschlossen.
+    </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:
+-->

Reply via email to