diff options
author | xue <> | 2006-09-23 01:51:57 +0000 |
---|---|---|
committer | xue <> | 2006-09-23 01:51:57 +0000 |
commit | a5467e842316daf6a8a4345740f05a9731167ce1 (patch) | |
tree | 0a982dd52df5c682fd2de8f9b22137471cee2dbe /framework/3rdParty/PhpShell/PHP/Shell/Extensions/VerbosePrint.php | |
parent | 9af56fd93ed071d86f14296cec618073f6c0941a (diff) |
merge from 3.0 branch till 1435.
Diffstat (limited to 'framework/3rdParty/PhpShell/PHP/Shell/Extensions/VerbosePrint.php')
-rw-r--r-- | framework/3rdParty/PhpShell/PHP/Shell/Extensions/VerbosePrint.php | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/framework/3rdParty/PhpShell/PHP/Shell/Extensions/VerbosePrint.php b/framework/3rdParty/PhpShell/PHP/Shell/Extensions/VerbosePrint.php new file mode 100644 index 00000000..843292b0 --- /dev/null +++ b/framework/3rdParty/PhpShell/PHP/Shell/Extensions/VerbosePrint.php @@ -0,0 +1,56 @@ +<?php +class PHP_Shell_Extensions_VerbosePrint implements PHP_Shell_Extension { + protected $opt_verbose = false; + protected $oneshot_verbose = false; + + public function register() { + $cmd = PHP_Shell_Commands::getInstance(); + $cmd->registerCommand('#^p #', $this, 'cmdPrint', 'p <var>', 'print the variable verbosly'); + + $opt = PHP_Shell_Options::getInstance(); + $opt->registerOption('verboseprint', $this, 'optSetVerbose'); + + } + + /** + * handle the 'p ' command + * + * set the verbose flag + * + * @return string the pure command-string without the 'p ' command + */ + public function cmdPrint($l) { + $this->oneshot_verbose = true; + + $cmd = substr($l, 2); + + return $cmd; + } + + public function optSetVerbose($key, $val) { + switch($val) { + case "false": + case "on": + case "1": + $this->opt_verbose = true; + default: + $this->opt_verbose = false; + break; + } + } + + /** + * check if we have a verbose print-out + * + * @return bool 1 if verbose, 0 otherwise + */ + public function isVerbose() { + $v = $this->opt_verbose || $this->oneshot_verbose; + + $this->oneshot_verbose = false; + + return $v; + } +} + + |