dio_open
(PHP 4 >= 4.2.0, PHP 5 < 5.1.0)
dio_open — C ライブラリの入出力ストリーム関数が許すよりも低レベルでファイルをオープンする (必要ならファイルを作成する)
説明
dio_open
( string $filename
, int $flags
[, int $mode
= 0
] ) : resource
dio_open() は、ファイルをオープンして そのファイル記述子を返します。
パラメータ
filename
オープンするファイルのパス。
flags
flags
パラメータには、 以下のフラグの組み合わせを指定します。 この値は、O_RDONLY
、O_WRONLY
、 あるいはO_RDWR
のいずれかでなければなりません。 さらに、このリストからその他の値を組み合わせることもできます。O_RDONLY
- 読み込み専用でファイルをオープンします。O_WRONLY
- 書き込み専用でファイルをオープンします。O_RDWR
- 読み書き両用でファイルをオープンします。O_CREAT
- ファイルが存在しなければ 新しいファイルを作成します。O_EXCL
-O_CREAT
およびO_EXCL
をともに指定すると、 すでにファイルが存在する場合に dio_open() が失敗します。O_TRUNC
- すでにファイルが存在し、書き込み アクセス用にオープンされている場合、ファイルの長さをゼロに切り詰めます。O_APPEND
- 書き込み時は、ファイルの終端に 追記します。O_NONBLOCK
- 非ブロッキングモードを指定します。O_NOCTTY
- TTY デバイスファイルをオープンするときに、 オープンしたファイルをプロセスが自動的に制御端末としないようにします。
mode
flags
がO_CREAT
を含む場合に、mode
でファイルのモード (作成許可) を指定します。O_CREAT
がflags
に指定されている場合にはmode
が必須となり、それ以外の場合は無視されます。ファイルを作成したときに実際に設定されるモードは、プロセスの umask 設定によって変わります。
返り値
ファイル記述子を返します。エラー時には false
を返します。
例
例1 ファイル記述子をオープンする
<?php$fd = dio_open('/dev/ttyS0', O_RDWR | O_NOCTTY | O_NONBLOCK);dio_close($fd);?>