【发布时间】:2013-10-07 18:41:22
【问题描述】:
我目前正在编写一个 PHP 库(主要是为我自己编写的),它在某些时候会让用户输入密码并且我希望它被隐藏(只要密码没有显示在全屏)。我到处搜索,但所有答案要么在 Win7 中不起作用,要么需要外部可执行文件。
因为它应该是一个库,所以我想保留它,所以我做了一些即兴创作并且非常接近,以至于我不愿意只是退回到外部 .exe 而不提出关于 SO 的问题。
我的解决方法是编写一个临时批处理文件(可以在之后删除或只使用tmpfile())并使用exec() 调用它:
@echo off
choice /c abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 /n /cs
echo %errorlevel%
假设密码是纯字母数字,我可以通过exec()的返回值来确定按下的键。然后我可以设置一个循环来捕获每个击键。剩下的唯一问题是,用户无法从choice 中断,因为无法将回车键本身设置为选项之一。
感谢任何帮助或其他解决方法。
【问题讨论】:
标签: php batch-file windows-7 command-line-interface