After some headscratching as to why my script was not detecting the terminal being resized... i discovered that the function would not report the new size of the terminal until the window is refreshed.
So this is the code that I am using to get the size of the screen:
$fullscreen = ncurses_newwin ( 0, 0, 0, 0);
// everytime you want to find out the size of the screen, write the following 2 lines:
ncurses_wrefresh($fullscreen);
ncurses_getmaxyx ($fullscreen, $y, $x );
ncurses_getmaxyx
(PHP 4 >= 4.3.0, PHP 5, PECL ncurses:1.0.0)
ncurses_getmaxyx — ウィンドウの大きさを返す
説明
void ncurses_getmaxyx
( resource $window
, int &$y
, int &$x
)
警告
この関数は、 実験的 なものです。この関数の動作・ 名前・その他ドキュメントに書かれている事項は、予告なく、将来的な PHP のリリースにおいて変更される可能性があります。 この関数は自己責任で使用してください。
指定したウィンドウ window の水平方向・垂直方向の大きさを取得します。
変数は参照渡しとする必要があり、 ユーザが端末の大きさを変更した際にこの変数が更新されます。
パラメータ
- window
-
調べるウィンドウ。
- x
-
ウィンドウの幅が設定されます。
- y
-
ウィンドウの高さが設定されます。
返り値
値を返しません。
ncurses_getmaxyx
superzouz at hotmail dot com
27-Jun-2007 09:36
27-Jun-2007 09:36
