ignasbernotas / phkey
一个基于PHP的API,用于捕获终端的按键。
0.1.1
2016-04-13 18:53 UTC
Requires
- php: >=5.5.9
- ext-readline: *
- symfony/event-dispatcher: ~2.8
Requires (Dev)
- phpunit/phpunit: 4.8
This package is not auto-updated.
Last update: 2024-09-14 18:31:39 UTC
README
基于PHP的命令行按键监听器。

此库提供了一个API,用于捕获终端的按键。它目前支持拉丁基本字符范围,例如方向键、功能键(F*)、回车、空格、插入、删除、退格、Esc、a-z等。
安装
您可以选择下载此库的zip包,或者简单地通过composer安装它。
composer require ignasbernotas/phkey
限制
此包仅适用于基于UNIX/Linux的系统,因为Windows PHP版本不支持readline扩展。
示例
捕获所有按键
use \Iber\Phkey\Events\KeyPressEvent; use \Iber\Phkey\Environment\Detector; $detect = new Detector(); $listener = $detect->getListenerInstance(); $eventDispatcher = $listener->getEventDispatcher(); $eventDispatcher->addListener('key:press', function(KeyPressEvent $event) { echo $event->getKey(), PHP_EOL; }); $eventDispatcher->addListener('key:enter', function(KeyPressEvent $event) use ($eventDispatcher) { echo 'Key "', $event->getKey(), '" was pressed. Quitting listener.', PHP_EOL; // notify the listener to stop $eventDispatcher->dispatch('key:stop:listening'); }); $listener->start();
许可证
根据MIT许可证。