PHP Readline:获取SIGINT的新提示

时间:2015-11-17 03:00:13

标签: php signals readline pcntl

我正在编写 php cli 交互式程序,它使用readline扩展程序充当shell。

但我发现当我按 Ctrl + C 时,整个程序退出。我希望它能得到一个新的提示而不是退出(就像bash)。

所以我尝试pcntl_signal来处理SIGINT

pcntl_signal(SIGINT, SIG_IGN);

它没有退出并且没有任何反应(就像死了一样)

我将代码更改为:

pcntl_signal(SIGINT, function(){
    echo "\n";
});

这次打印^C但没有新行,当我按 Enter 时,这些是提示前的新行。

我已阅读Readline: Get a new prompt on SIGINT,但它使用的是C,我发现siglongjmp中没有php个功能。

所以当我按 Ctrl + C

时,我想知道是否有可能获得新提示

0 个答案:

没有答案