wordpress   发布时间:2022-04-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了难道真的不可能写一个隐藏Windows密码的php cli密码提示吗?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我花了几个小时试图找到一种在php中编写跨平台密码提示的方法,该提示隐藏了用户输入的密码.然这可以通过使用stty -echo在Unix环境中轻松完成,但我尝试了各种passthru()和system()调用方法,使 windows做同样的事情无济于事. 我试过了: passthru('set /p pass=password: '); system('echo %pass% > out.txt
我花了几个小时试图找到一种在PHP中编写跨平台密码提示方法,该提示隐藏了用户输入的密码.然这可以通过使用stty -echo在Unix环境中轻松完成,但我尝试了各种passthru()和system()调用方法,使 windows做同样的事情无济于事.

我试过了

passthru('set /p pass=password: ');
system('echo %pass% > out.txt');
$pass = file_get_contents('out.txt','r');

这似乎挂在了passthru上(‘set / p pass = password:’);不允许我输入任何文本的行,必须用Ctrl-c杀死.

我还尝试了fgetc和fgets的各种方法,并打印退格字符来隐藏输入,因为这适用于其他语言.但是,PHP似乎无法在回车之前与文本进行交互.

我真的想找到一种方法来完成这项工作,这是一项不可能完成的任务还是可以做到这一点?

请注意,我知道我可以将PHP脚本包装在批处理文件中并将密码作为命令行参数传递,但在这种情况下,这对我不起作用.

解决方法

这是一个Windows解决方案,使用PHP的COM扩展.我在Windows XP上使用PHP 5.2.6进行了测试.

<?PHP

$pwObj = new Com('ScriptPW.password');

print "password: ";
$passwd = $pwObj->getpassword();

echo "Your password is $passwd\n";

?>

大佬总结

以上是大佬教程为你收集整理的难道真的不可能写一个隐藏Windows密码的php cli密码提示吗?全部内容,希望文章能够帮你解决难道真的不可能写一个隐藏Windows密码的php cli密码提示吗?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。