shmop_open

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

shmop_openErstellt oder öffnet einen gemeinsamen Speicherbereich

Beschreibung

shmop_open(
    int $key,
    string $mode,
    int $permissions,
    int $size
): Shmop|false

shmop_open() kann einen gemeinsamen Speicherbereich erstellen oder öffnen.

Parameter-Liste

key

Die System-ID des gemeinsam genutzten Speicherbereichs. Dieser Parameter kann als Dezimal- oder Hexadezimalzahl übergeben werden.

mode

Folgende Flags können benutzt werden:

  • "a" zum Zugriff (access) auf einen gemeinsamen Speicherbereich (setzt SHM_RDONLY für shmat). Benutzen Sie dieses Flag, wenn Sie einen bestehenden gemeinsamen Speicherbereich nur zum Lesen öffnen wollen.
  • "c" zum Erzeugen (create) eines gemeinsamen Speicherbereichs (setzt IPC_CREATE). Benutzen Sie dieses Flag, wenn Sie einen neuen gemeinsamen Speicherbereich erzeugen wollen, oder, falls bereits ein Segment mit derselben ID existiert, zum Öffnen dieses Bereichs für Lese- und Schreibzugriffe.
  • "w" für Lese- und Schreibzugriffe. Benutzen Sie dieses Flag, wenn Sie in einen gemeinsamen Speicherbereich schreiben oder daraus lesen müssen. Das wird meistens der Fall sein.
  • "n" zum Erzeugen eines neuen gemeinsamen Speicherbereichs (setzt IPC_CREATE|IPC_EXCL). Benutzen Sie dieses Flag, wenn Sie einen neuen gemeinsames Speicherbereich erzeugen wollen. Falls schon einen Bereich mit diesem Flag existiert, schlägt die Funktion fehl. Dies ist aus Sicherheitsgründen nützlich, denn damit können Sie vermeiden, dass konkurrierende Prozesse ausgenutzt werden.

permissions

Die Zugriffsberechtigungen für die gemeinsamen Speicherbereiche sind dieselben wie für Dateien. Diese Berechtigungen müssen als Oktalwerte übergeben werden, zum Beispiel 0644.

size

Die Größe des erzeugten gemeinsam genutzten Speicherbereichs in Byte.

Hinweis:

Beachten Sie: der dritte und vierte Parameter sollten mit 0 angegeben sein, falls Sie einen bereits existierenden Speicherbereich öffnen.

Rückgabewerte

Bei Erfolg gibt shmop_open() eine Shmop-Instanz zurück, die verwendet werden kann, um auf den erstellten gemeinsamen Speicherbereich zuzugreifen. Bei einem Fehler wird false zurückgegeben.

Changelog

Version Beschreibung
8.0.0 Bei Erfolg gibt diese Funktion nun eine Shmop-Instanz zurück; vorher wurde eine resource zurückgegeben.

Beispiele

Beispiel #1 Einen neuen gemeinsamen Speicherbereich erstellen

<?php
$shm_key 
ftok(__FILE__'t');
$shm_id shmop_open($shm_key"c"0644100);
?>

In diesem Beispiel wurde ein gemeinsamer Speicherbereich geöffnet. Die System-ID wurde von der Funktion ftok() zurückgegeben.

Siehe auch

Hier Kannst Du einen Kommentar verfassen


Bitte gib mindestens 10 Zeichen ein.
Wird geladen... Bitte warte.
* Pflichtangabe
Es sind noch keine Kommentare vorhanden.

Was genau bedeutet "Vibe Coding"? Ein tiefgehender Blick für Entwickler

In der Welt der Softwareentwicklung gibt es unzählige Wege, wie man an ein Projekt herangeht. Manche schwören auf strikte Planung, andere auf bewährte Algorithmen und wieder andere lassen sich von etwas ganz anderem leiten: ihrem Gefühl. ...

admin

Autor : admin
Kategorie: Software & Web-Development

PHP cURL-Tutorial: Verwendung von cURL zum Durchführen von HTTP-Anfragen

cURL ist eine leistungsstarke PHP-Erweiterung, die es Ihnen ermöglicht, mit verschiedenen Servern über verschiedene Protokolle wie HTTP, HTTPS, FTP und mehr zu kommunizieren. ...

TheMax

Autor : TheMax
Kategorie: PHP-Tutorials

Midjourney Tutorial - Anleitung für Anfänger

Über Midjourney, dem Tool zur Erstellung digitaler Bilder mithilfe von künstlicher Intelligenz, gibt es ein informatives Video mit dem Titel "Midjourney Tutorial auf Deutsch - Anleitung für Anfänger" ...

Mike94

Autor : Mike94
Kategorie: KI Tutorials

Tutorial veröffentlichen

Tutorial veröffentlichen

Teile Dein Wissen mit anderen Entwicklern weltweit

Du bist Profi in deinem Bereich und möchtest dein Wissen teilen, dann melde dich jetzt an und teile es mit unserer PHP-Community

mehr erfahren

Tutorial veröffentlichen

FPDF und eingebettete Links

Guten Abend, ich komme bei einem Problem nicht weiter, eventuell hat ja hier jemand einen Fingerzeig für mich. Folgende Situation: Ich erstelle ...

Geschrieben von Weindesigner am 04.02.2026 19:19:50
Forum: PHP Developer Forum
Große JSON-Dateien in PHP effizient streamen?

Don’t use json_decode() for GB-scale files. Use a streaming parser (SAX-style) like jsonstreamingparser, or redesign the JSON into newline-delim ...

Geschrieben von jackmarvia689 am 28.01.2026 10:41:56
Forum: PHP Developer Forum
Laufschrift mit Bildern

This is a test This is a test ...

Geschrieben von Kristy am 24.01.2026 17:54:44
Forum: HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS
Grid und Pos geht nicht ...

It seems like you need to adjust the grid areas for your sliders. For Slider 1, you should set it to occupy columns 2 to 5 and row 4. For Slider 2 ...

Geschrieben von marktuan am 22.01.2026 17:04:09
Forum: PHP Developer Forum