Call to undefined function readline()?

M Fayyaz picture M Fayyaz · Apr 23, 2014 · Viewed 11.5k times · Source

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 ?

Answer

Chris Gibb picture Chris Gibb · Aug 16, 2014

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;
    }
}