Call to undefined function readline()?

时间秒杀一切 提交于 2019-12-07 02:06:05

问题


I am integrating Dropbox into my PHP based website. When i try to run the following code. i got this Fatal error: Call to undefined function readline() on the last line.

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: "));

I have come through different forum where people said it will work in Command line , But I don't understand how? Any idea ?


回答1:


Or just use this to simulate it

if(!function_exists("readline")) {
    function readline($prompt = null){
        if($prompt){
            echo $prompt;
        }
        $fp = fopen("php://stdin","r");
        $line = rtrim(fgets($fp, 1024));
        return $line;
    }
}



回答2:


readline() is for running on the command line not via the web browser.

To check you have it installed on your server, type:

php -i | grep Configure

Probably, you have not installed it and you should compile it yourself or ask your hosting admin to if they allow this.




回答3:


Just had this issue on Ubuntu.

Found this answer: https://askubuntu.com/a/264329/166

The solution in this scenario was to install the package php5-readline.



来源:https://stackoverflow.com/questions/23238378/call-to-undefined-function-readline

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!