PHP: dio_open - Manual

downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

dio_read dio_fcntl

Last updated: Sat, 27 Jan 2007

view this page in

# dio_open

(PHP 4 >= 4.2.0, PHP 5 <= 5.0.4)

dio_open -- Opens a new filename with specified permissions of flags and creation permissions of mode

## Описание

resource dio_open ( string filename, int flags [, int mode] )

dio_open() opens a file and returns a new file descriptor for it.

## Список параметров

`filename`

  The opened file.

`flags`

  The `flags` parameter can also include any combination of the following flags:

  - `O_CREAT` - creates the file, if it doesn't already exist.

  - `O_EXCL` - if both, `O_CREAT` and `O_EXCL` are set, dio_open() fails, if the file already exists.

  - `O_TRUNC` - if the file exists, and its opened for write access, the file will be truncated to zero length.

  - `O_APPEND` - write operations write data at the end of the file.

  - `O_NONBLOCK` - sets non blocking mode.

`mode`

  If `flags` is `O_CREAT`, `mode` will set the mode of the file (creation permissions).

  - `O_RDONLY` - opens the file for read access.

  - `O_WRONLY` - opens the file for write access.

  - `O_RDWR` - opens the file for both reading and writing.

## Возвращаемые значения

A file descriptor or `FALSE` on error.

## Примеры

Пример 1. Opening a file descriptor

`<?php $fd = dio_open('/dev/ttyS0', O_RDWR | O_NOCTTY | O_NONBLOCK); dio_close($fd); ?>`

## Смотрите также

dio_close()

add a note User Contributed Notes
dio_open
j at pureftpd dot org
23-Jan-2005 04:13
`Please note that dio_open()/dio_write()/dio_close() is *faster* than fopen()/fwrite()/fclose() for files.
fwrite() has to manage a 8k buffer, while dio_write() just issue a single write(). The end result is less system calls and less memory access.
Also, giving the full size to write() as with dio_write() let filesystems properly use preallocation in order to avoid fragmentation.`
alla at cyber dot com dot au
22-Mar-2003 07:16
`To specify a combination of flags you OR them together.
This was the only way I could get it to append:
$fd = dio_open($file, O_WRONLY | O_APPEND);`
add a note
dio_read dio_fcntl

Last updated: Sat, 27 Jan 2007
show source | credits | stats | sitemap | contact | advertising | mirror sites
Copyright © 2001-2007 The PHP Group
All rights reserved.
This mirror generously provided by: Yahoo! Inc.
Last updated: Sat Mar 10 09:32:46 2007 PST