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 — Returns the size of a window
Описание
void ncurses_getmaxyx
( resource $window
, int &$y
, int &$x
)
Внимание
Эта функция является ЭКСПЕРИМЕНТАЛЬНОЙ. Поведение этой функции, ее имя и относящаяся к ней документация могут измениться в последующих версиях PHP без уведомления. Используйте эту функцию на свой страх и риск.
Gets the horizontal and vertical size of the given window into the given variables.
Variables must be passed as reference, so they are updated when the user changes the terminal size.
Список параметров
- window
-
The measured window
- x
-
This will be set to the window width
- y
-
This will be set to the window height
Возвращаемые значения
Эта функция не возвращает значения после выполнения.
ncurses_getmaxyx
superzouz at hotmail dot com
26-Jun-2007 05:36
26-Jun-2007 05:36
