2011年07月15日

set_socket_blocking関数と set_socket_timeout関数


■ set_socket_blocking関数

これはファイルストリームをブロックするかどうかを指定できる関数で、
ブロッキングモードにすれば、十分なデータを受け取れるまで実行がストップし、

非ブロッキングモードにすれば、ストリームから情報を取得する関数が
すぐ帰ってくるそうです。

サンプルコードが載ってなかったから、ちょっと調べてみたら……

実はこの関数、stream_set_blocking という関数のエイリアスで、
しかも PHP5.3.0 では非推奨とのこと(-_-)

使用しないことを強くすすめてますね……使えないんじゃん。
じゃあ、ストリームのブロックモードを有効/無効にするには、
stream_set_blocking関数を使えってことですね。


■ set_socket_timeout関数

こちらはソケット接続からの入力の待ち時間を秒数で設定できる関数です。

基本は
set_socket_timeout(file_descriptor, seconds)
だから、

2つ目の引数で秒数を設定するってことですよね?
1つ目の引数は、fsockopen で開いたファイル・ハンドルじゃなきゃいけないみたい。

でもこの関数はちょっと古いみたいです(^^;)
まず socket_set_timeout って名前に変わったらしいんだけど、
今は両方とも推奨されてないみたいです。

現在は stream_set_timeout関数ってのを使えってことみたいですよ。


<お知らせ>----------------------------------------------------------------------------------------

copywriting.jpg

The Writing Master Class.(コピーライティングマスタークラス) 25,000円

----------------------------------------------------------------------------------------<お知らせ>



参考にさせていただいたページは……↓

「PHPマニュアル」
http://php.net/manual/ja/function.set-socket-blocking.php

「PHPプロ!」
http://www.phppro.jp/phpmanual/php/function.stream-set-timeout.html

ありがとうございました<(_ _)>


別ブログの方にも関連関数について書いてます↓
fsockopen関数
すでにおなじみの fopen関数



posted by れい at 17:00| Comment(0) | I/O関数 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

×

この広告は1年以上新しい記事の投稿がないブログに表示されております。