Php 调用未定义的函数readline()?
我正在将Dropbox集成到基于PHP的网站中。当我尝试运行以下代码时。我遇到了这个致命错误:在最后一行调用未定义的函数readline()Php 调用未定义的函数readline()?,php,readline,dropbox-php,Php,Readline,Dropbox Php,我正在将Dropbox集成到基于PHP的网站中。当我尝试运行以下代码时。我遇到了这个致命错误:在最后一行调用未定义的函数readline() require_once "dropbox-sdk/Dropbox/autoload.php"; use \Dropbox as dbx; $appInfo = dbx\AppInfo::loadFromJsonFile("app-info.json"); echo "<pre>"; print_r($appInfo); echo "<
require_once "dropbox-sdk/Dropbox/autoload.php";
use \Dropbox as dbx;
$appInfo = dbx\AppInfo::loadFromJsonFile("app-info.json");
echo "<pre>";
print_r($appInfo);
echo "</pre>";
$webAuth = new dbx\WebAuthNoRedirect($appInfo, "PHP-Example/1.0");
echo "<pre>";
print_r($webAuth);
echo "</pre>";
$authorizeUrl = $webAuth->start();
echo "1. Go to: " . $authorizeUrl . "\n<br>";
echo "2. Click \"Allow\" (you might have to log in first).\n<br>";
echo "3. Copy the authorization code.\n<br>";
$authCode = \trim(\readline("Enter the authorization code here: "));
require_once“dropbox sdk/dropbox/autoload.php”;
使用\Dropbox作为dbx;
$appInfo=dbx\appInfo::loadFromJsonFile(“app info.json”);
回声“;
打印(appInfo);
回声“;
$webAuth=newdbx\WebAuthNoRedirect($appInfo,“PHP示例/1.0”);
回声“;
打印(webAuth);
回声“;
$authorizeUrl=$webAuth->start();
echo“1.转到:”$授权URL。“\n
”;
echo“2.单击\”允许\“(您可能必须先登录)。\n
”;
echo“3.复制授权码。\n
”;
$authCode=\trim(\readline(“在此处输入授权代码:”);
我曾经去过不同的论坛,人们说它可以在命令行中工作,但我不明白怎么做?有什么想法吗?用于在命令行上运行,而不是通过web浏览器
要检查是否已将其安装在服务器上,请键入:
可能您还没有安装它,您应该自己编译它,或者询问您的主机管理员是否允许这样做。或者使用它来模拟它
刚刚在Ubuntu上出现了这个问题 找到了这个答案:
此场景中的解决方案是安装软件包
php5 readline
这是最奇怪的事情,但感谢您的努力。如果(!function_存在(“readline”),防止恼人的重定义错误,请注意,您可以更换fopen(“php://stdin“,“r”)
带有STDIN
PHP常量,其定义方式相同。
php -i | grep Configure
if(!function_exists("readline")) {
function readline($prompt = null){
if($prompt){
echo $prompt;
}
$fp = fopen("php://stdin","r");
$line = rtrim(fgets($fp, 1024));
return $line;
}
}