console.php: fix up the help and include a handy cut-n-paste'able example

This commit is contained in:
Brion Vibber 2009-11-06 15:03:03 +01:00
parent 4b7a36ea19
commit 1e1b2f7783

View File

@ -110,12 +110,21 @@ function readline_emulation($prompt)
function console_help() function console_help()
{ {
print "Welcome to StatusNet's interactive PHP console!\n"; print "Welcome to StatusNet's interactive PHP console!\n";
print "Type some PHP code and it'll run!\n"; print "Type some PHP code and it'll execute...\n";
print "\n"; print "\n";
print "Note that PHP is cranky and you can easily kill your session.\n"; print "Hint: return a value of any time to output it via var_export():\n";
print " \$profile = new Profile();\n";
print " \$profile->find();\n";
print " \$profile->fetch();\n";
print " return \$profile;\n";
print "\n";
print "Note that PHP is cranky and you can easily kill your session by mistyping.\n";
print "\n";
print "Type ctrl+D or enter 'exit' to exit.\n";
} }
print "StatusNet interactive PHP console... type ctrl+D or enter 'exit' to exit.\n";
$prompt = common_config('site', 'name') . '> '; $prompt = common_config('site', 'name') . '> ';
while (!feof(STDIN)) { while (!feof(STDIN)) {
$line = read_input_line($prompt); $line = read_input_line($prompt);
@ -124,14 +133,14 @@ while (!feof(STDIN)) {
break; break;
} elseif ($line !== '') { } elseif ($line !== '') {
try { try {
if ($line == 'exit') { if (trim($line) == 'exit') {
break; break;
} elseif ($line == 'help') { } elseif (trim($line) == 'help') {
console_help(); console_help();
continue; continue;
} }
// Let's do this // Let's do this!
$result = eval($line); $result = eval($line);
if ($result === false) { if ($result === false) {
// parse error // parse error