(PHP 4 >= 4.2.0, PHP 5 <= 5.0.5, PHP 7)
dio_open — Öffnet eine Datei (falls nötig, wird diese erzeugt) auf einem niedrigeren Level als es die C-Bibliotheks Ein-/Ausgabe-Stream-Funktionen erlauben.
$filename
, int $flags
[, int $mode
= 0
] )dio_open() öffnet eine Datei und liefert einen Dateideskriptor zurück.
filename
Der Pfadname der zu öffnenden Datei.
flags
Der Parameter flags
ist ein bitweise ODER
verknüpfter Wert bestehend aus Flags der folgende Liste. Dieser Wert
muss entweder O_RDONLY
,
O_WRONLY
, oder O_RDWR
enthalten. Zusätzlich kann er eine beliebige Kombination der anderen
Flags dieser Liste enthalten.
O_RDONLY
- öffnet die Datei zum Lesezugriff.
O_WRONLY
- öffnet die Datei zum Schreibzugriff.
O_RDWR
- öffnet die Datei zum Lesen und Schreiben.
O_CREAT
- erzeugt die Datei, falls diese nicht existiert
O_EXCL
- wird sowohl O_CREAT
als auch O_EXCL
angegeben und die Datei existiert
bereits, schlägt dio_open() fehl.
O_TRUNC
- falls die Datei bereits existiert, und sie für
Schreibzugriff geöffnet wird, wird diese auf die Grösse 0
zurückgesetzt
O_APPEND
- setzt den Zeiger für Schreiboperationen an das Ende
der Datei
O_NONBLOCK
- Setzt den Modus auf "nonblocking"
O_NOCTTY
- hält das Betriebssystem davon ab,
die geöffnete Datei als Prozess steuerndes Terminal zuzuweisen,
wenn eine TTY Gerätedatei geöffnet wird.
mode
Wenn flags
das Flag O_CREAT
enthält, setzt mode
die Dateizugriffsrechte.
mode
wird für die korrekte Ausführung benötigt,
wenn O_CREAT
in flags
angegeben wird, und wird ansonsten ignoriert.
Die tatsächlichen Dateizugriffsrechte, die der erzeugten Datei zugewiesen werden, werden von der umask Einstellung des Prozesses wie üblich beeinflusst.
Ein Dateideskriptor oder FALSE
bei Fehlern.
Beispiel #1 Öffnen eines Dateideskriptors
<?php
$fd = dio_open('/dev/ttyS0', O_RDWR | O_NOCTTY | O_NONBLOCK);
dio_close($fd);
?>