只是想知道,是否可以单独使用PHP创建一个交互式shell。我的意思是像你对数据库、python等的看法。
如果是,怎么做?

最佳答案

是的,有可能。为了具有交互性,程序必须能够等待并读入来自stdin的用户输入。在PHP中,您可以通过打开'php://stdin'的文件描述符来读取stdin。取自an answer to different question,以下是PHP中交互式用户提示的示例(当然,当从命令行运行时):

echo "Continue? (Y/N) - ";

$stdin = fopen('php://stdin', 'r');
$response = fgetc($stdin);
if ($response != 'Y') {
   echo "Aborted.\n";
   exit;
}

当然,要获得完整的输入行而不是单个字符,您需要fgets()而不是fgetc()。根据您的程序/shell将做什么,整个程序可能被构造为一个大的连续循环。希望这能给你一个开始的想法。如果你想得到真正的花哨(CLI pseudo GUI),你可以use ncurses

关于php - 使用PHP的交互式shell,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47556128/

10-14 16:29
查看更多