PHP CLI使用批处理在Win7中隐藏passwd输入

PHP CLI使用批处理在Win7中隐藏passwd输入,php,batch-file,windows-7,command-line-interface,Php,Batch File,Windows 7,Command Line Interface,我目前正在编写一个PHP库(主要是为我自己编写的),在某个时候,它会让用户输入密码,我希望它被隐藏起来(只要密码没有在屏幕上完全显示出来,我几乎可以使用任何东西)。我到处都搜索过,但所有答案要么在Win7中不起作用,要么需要外部可执行文件 因为它应该是一个库,所以我想把它保存起来,所以我做了一些即兴创作,并且非常接近它,以至于我不愿意在不提出问题的情况下回到外部的.exe 我的解决方法是编写一个临时批处理文件(可以在以后删除,也可以使用tmpfile())并使用exec()调用它: 假设密码是纯

我目前正在编写一个PHP库(主要是为我自己编写的),在某个时候,它会让用户输入密码,我希望它被隐藏起来(只要密码没有在屏幕上完全显示出来,我几乎可以使用任何东西)。我到处都搜索过,但所有答案要么在Win7中不起作用,要么需要外部可执行文件

因为它应该是一个库,所以我想把它保存起来,所以我做了一些即兴创作,并且非常接近它,以至于我不愿意在不提出问题的情况下回到外部的.exe

我的解决方法是编写一个临时批处理文件(可以在以后删除,也可以使用
tmpfile()
)并使用
exec()调用它:

假设密码是纯字母数字的,我可以通过返回值
exec()
来确定按下的键。然后我就可以建立一个循环来捕捉每一次击键。剩下的唯一问题是,用户无法脱离
选项
,因为回车键本身无法设置为选项之一


非常感谢您的帮助或其他解决方法。

请参阅DosTips.com上Carlos的这篇文章

@echo off
choice /c abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 /n /cs
echo %errorlevel%