PHP教程

PHP Readline扩展

在PHP中,readline 扩展函数实现了访问 GNU Readline 库的接口,这些函数提供了可编辑的命令行。例如在 Bash 中允许使用箭头按键来插入字符或者翻看历史命令,由于这个库的交互特性,对编写 Web 应用程序没多大用处,但当编写从命令行使用的脚本时非常有用。

注意:从 PHP 7.1.0 开始,该扩展支持 Windows。

一、安装

为了使用这些函数,需要编译 PHP 的 CGI 或 CLI 版本,并且这个版本必须支持 readline。在编译 PHP 时,需要包含 --with-readline[=DIR] 配置选项来启用 readline 支持。如果希望使用 libedit 替代 readline,那么应当在编译 PHP 时指定 --with-libedit[=DIR] 配置选项。

从 PHP 7.1.0 版本开始,在 Windows 系统上,此扩展是默认可用的,无需进行额外配置。

二、运行时配置

这些函数的行为受 php.ini 中的设置影响,以下是配置指令的简短说明:

  • cli.pager string:命令行显示输出的外部工具;
  • cli.prompt string:命令行提示

三、预定义常量

下列常量由此扩展定义,且仅在此扩展编译入 PHP 或在运行时动态载入时可用。

READLINE_LIB (字符串):用于读行支持的库;目前是 readline 或 libedit。

四、Readline函数

  • readline_add_history — 添加一行到历史;
  • readline_callback_handler_install — 初始化 readline 回调接口和终端,然后打印提示并立即返回;
  • readline_callback_handler_remove — 移除之前已安装的回调函数句柄并且恢复终端设置;
  • readline_callback_read_char — 当一个行被接收时读取一个字符并且通知 readline 回调接口;
  • readline_clear_history — 清除历史;
  • readline_completion_function — 注册完成函数;
  • readline_info — 获取/设置各种 readline 内部变量;
  • readline_list_history — 获取历史;
  • readline_on_new_line — 通知 readline 将光标移动到新行;
  • readline_read_history — 读取历史;
  • readline_redisplay — 重绘显示区;
  • readline_write_history — 写入历史记录;
  • readline — 读取一行。
广告合作
QQ群号:707632017

温馨提示:

1、本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。邮箱:2942802716#qq.com。(#改为@)

2、本站原创内容未经允许不得转裁,转载请注明出处“站长百科”和原文地址。

目录