関数・クラス解説

dio_fcntl

version:PHP 4 >= 4.2.0, PHP 5 < 5.1.0 (公式)

fd について C ライブラリの fcntl を実行する

公式リファレンス

書式

dio_fcntl ( resource $fd , int $cmd [, mixed $args ] ) : mixed

説明

関数 dio_fcntl() は、ファイル記述子 fd において cmd で指定された処理を行います。いくつかのコマンドでは、オプションの引数 args の指定が必要となります。

パラメータ

fd
dio_open() が返すファイル記述子。
cmd
以下の処理のいずれか。
  • F_SETLK - ロックが設定あるいはクリアされます。 ロックが他の誰かに設定されている場合、dio_fcntl() は -1 を返します。
  • F_SETLKW - F_SETLK と似ていますが、ロックが他の誰かに設定されている場合は dio_fcntl() はそのロックが開放されるまで待ちます。
  • F_GETLK - dio_fcntl() は、他の誰かがロックを妨げる場合、(後述の)連想配列を返します。 妨げるものがない場合、キー "type" は F_UNLCK に設定されます。
  • F_DUPFD - args 以上で最小のファイル記述子を探し、それを返します。
  • F_SETFL - ファイル記述子のフラグを args で指定した値に設定します。指定できる値は O_APPEND、O_NONBLOCK あるいは O_ASYNC のいずれかです。 O_ASYNC を使用するには、 PCNTL 拡張モジュールが必要です。
args
args は連想配列で、 cmd が F_SETLK あるいは F_SETLLW の際に以下のキーを保持します。
  • start - ロックを開始するオフセット。
  • length - ロックする領域の大きさ。ゼロはファイルの終端までを意味します。
  • wenth - l_start の相対位置指定。 SEEK_SET、 SEEK_END および SEEK_CUR のいずれか。
  • type - ロックの種類。F_RDLCK(読み込み ロック)、F_WRLCK(書き込みロック)あるいは F_UNLCK(ロック解除)のいずれか。

返値

C ライブラリをコールした結果を返します。

注意

注意: この関数は Windows 環境にはまだ実装されていません。

サンプル

例1 ロックの設定と解除

$fd = dio_open('/dev/ttyS0', O_RDWR); if (dio_fcntl($fd, F_SETLK, Array("type"=>F_WRLCK)) == -1) {    // ファイル記述子がロックされている    echo "ロックを解除できません。別のプロセスによってロックされています。"; } else {    echo "ロックが正常に設定/解除できました。"; } dio_close($fd);

ワード検索


※入力キーワードが、関数名・説明文・タグに含まれるものを検索

関数名アルファベット別

A B C D E F G H I J
K L M N O P Q R S T
U V W X Y Z _

最終更新一覧

stristr
 大文字小文字を区別せず文字列を検索し、ヒット箇所以降(あるいは以前)の文字列を返却

stripslashes
 バックスラッシュでエスケープされた文字列から、バックスラッシュを取り除く

stripos
 大文字小文字を区別せずに文字列が最初に現れる位置を取得する

stripcslashes
 addcslashes() でクォートされた文字列をアンクォートする

strip_tags
 文字列から HTML と PHP のタグを除去して返却

strcspn
 指定した文字が最初に現れる位置を調べる

strcoll
 ロケールに基づいて2つの文字列を比較し同じか(あるいは大小)を判定する

strcmp
 2つの文字列を比較し同じか(あるいは大小)を判定する

strchr
 strstr() のエイリアス

strcasecmp
 2つの文字列を比較(大文字小文字を区別せず同じとみなす)

カテゴリー一覧

PHP の振る舞いの変更
音声フォーマットの操作
認証サービス
コマンドライン関連
圧縮およびアーカイブ
暗号
データベース関連
日付および時刻関連
ファイルシステム
自然言語および文字エンコーディング
画像処理および作成
メール関連
数学
テキスト以外の MIME 型
プロセス制御
その他の基本モジュール
その他のサービス
検索エンジン用の拡張モジュール
サーバー固有のモジュール
セッション関連
テキスト処理
変数・データ型関連
ウェブサービス
Windows 用のモジュール
XML 操作
GUI用の拡張モジュール