summaryrefslogtreecommitdiff
path: root/lib/prado/framework/3rdParty/PhpShell/php-shell-cmd.php
diff options
context:
space:
mode:
authoremkael <emkael@tlen.pl>2016-02-24 23:18:07 +0100
committeremkael <emkael@tlen.pl>2016-02-24 23:18:07 +0100
commit6f7fdef0f500cd4bb540affd3bc1482243f337c1 (patch)
tree4853eecd0769a903e6130c1896e1d070848150dd /lib/prado/framework/3rdParty/PhpShell/php-shell-cmd.php
parent61f2ea48a4e11cb5fb941b3783e19c9e9ef38a45 (diff)
* Prado 3.3.0
Diffstat (limited to 'lib/prado/framework/3rdParty/PhpShell/php-shell-cmd.php')
-rw-r--r--lib/prado/framework/3rdParty/PhpShell/php-shell-cmd.php86
1 files changed, 86 insertions, 0 deletions
diff --git a/lib/prado/framework/3rdParty/PhpShell/php-shell-cmd.php b/lib/prado/framework/3rdParty/PhpShell/php-shell-cmd.php
new file mode 100644
index 0000000..aec6d6e
--- /dev/null
+++ b/lib/prado/framework/3rdParty/PhpShell/php-shell-cmd.php
@@ -0,0 +1,86 @@
+<?php
+
+$f = <<<EOF
+PHP-Shell - Version %s%s
+(c) 2006, Jan Kneschke <jan@kneschke.de>
+
+>> use '?' to open the inline help
+
+EOF;
+
+printf($f,
+ $__shell->getVersion(),
+ $__shell->hasReadline() ? ', with readline() support' : '');
+unset($f);
+
+print $__shell_exts->colour->getColour("default");
+while($__shell->input()) {
+ if ($__shell_exts->autoload->isAutoloadEnabled() && !function_exists('__autoload')) {
+ /**
+ * default autoloader
+ *
+ * If a class doesn't exist try to load it by guessing the filename
+ * class PHP_Shell should be located in PHP/Shell.php.
+ *
+ * you can set your own autoloader by defining __autoload() before including
+ * this file
+ *
+ * @param string $classname name of the class
+ */
+
+ function __autoload($classname) {
+ global $__shell_exts;
+
+ if ($__shell_exts->autoload_debug->isAutoloadDebug()) {
+ print str_repeat(".", $__shell_exts->autoload_debug->incAutoloadDepth())." -> autoloading $classname".PHP_EOL;
+ }
+ include_once str_replace('_', '/', $classname).'.php';
+ if ($__shell_exts->autoload_debug->isAutoloadDebug()) {
+ print str_repeat(".", $__shell_exts->autoload_debug->decAutoloadDepth())." <- autoloading $classname".PHP_EOL;
+ }
+ }
+ }
+
+ try {
+ $__shell_exts->exectime->startParseTime();
+ if ($__shell->parse() == 0) {
+ ## we have a full command, execute it
+
+ $__shell_exts->exectime->startExecTime();
+
+ $__shell_retval = eval($__shell->getCode());
+ if (isset($__shell_retval)) {
+ print $__shell_exts->colour->getColour("value");
+
+ if (function_exists("__shell_print_var")) {
+ __shell_print_var($__shell,$__shell_retval, $__shell_exts->verboseprint->isVerbose());
+ } else {
+ var_export($__shell_retval);
+ }
+ }
+ ## cleanup the variable namespace
+ unset($__shell_retval);
+ $__shell->resetCode();
+ }
+ } catch(Exception $__shell_exception) {
+ print $__shell_exts->colour->getColour("exception");
+ printf('%s (code: %d) got thrown'.PHP_EOL, get_class($__shell_exception), $__shell_exception->getCode());
+ print $__shell_exception;
+
+ $__shell->resetCode();
+
+ ## cleanup the variable namespace
+ unset($__shell_exception);
+ }
+ print $__shell_exts->colour->getColour("default");
+ $__shell_exts->exectime->stopTime();
+ if ($__shell_exts->exectime->isShow()) {
+ printf(" (parse: %.4fs, exec: %.4fs)",
+ $__shell_exts->exectime->getParseTime(),
+ $__shell_exts->exectime->getExecTime()
+ );
+ }
+}
+
+print $__shell_exts->colour->getColour("reset");
+