|
@@ -257,56 +257,24 @@ abstract class Base
|
|
|
*/
|
|
|
public function CliParams($key = '')
|
|
|
{
|
|
|
- $argv = array();
|
|
|
- if (isset($_SERVER['argv'])) $argv = $_SERVER['argv'];
|
|
|
- //修正部分服务器Rewrite 后再加参数不识别的问题(直接进入命令行的模式)
|
|
|
- if ($argv && $_SERVER['PHP_SELF'] == $_SERVER['SCRIPT_NAME']) {
|
|
|
- if (count($argv) == 1) return;
|
|
|
- array_shift($argv);
|
|
|
- $path = $argv[0];
|
|
|
- if($query = stristr($path, '?')) {
|
|
|
- $path = str_replace(stristr($path, '?'), '', $path);
|
|
|
- }
|
|
|
- $args = (array)$this->parseArgs($path);
|
|
|
- //处理GET或POST方法 数据结构 key1=value1 key2=value2 键和值中间不能有空格
|
|
|
- if($query && strlen($query) > 1) {
|
|
|
- $queryArr = explode("&", substr($query, 1));
|
|
|
- foreach ($queryArr as $value) {
|
|
|
- list($index, $val) = explode('=', $value, 2);
|
|
|
- $args[$index] = $val;
|
|
|
- }
|
|
|
- }
|
|
|
- if ($_SERVER['argc'] > 2) {
|
|
|
- for ($i = 1; $i < $_SERVER['argc'] - 1; $i++) {
|
|
|
- list($index, $val) = explode('=', $argv[$i], 2);
|
|
|
- $args[$index] = $val;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- $this->pathArgs = $args;
|
|
|
- if ($args && $key != '') {
|
|
|
- return isset($args[$key]) ? $args[$key] : '';
|
|
|
- }
|
|
|
+ $args = array();
|
|
|
+ if(!isset($_SERVER['__CLI_ARGS'])) {
|
|
|
return $args;
|
|
|
+ }else{
|
|
|
+ $args = $_SERVER['__CLI_ARGS'][2];
|
|
|
+ }
|
|
|
+ if ($args && $key != '') {
|
|
|
+ return isset($args[$key]) ? $args[$key] : null;
|
|
|
}
|
|
|
return array();
|
|
|
}
|
|
|
|
|
|
public function getCliPathArgs() {
|
|
|
- $argv = array();
|
|
|
$args = array();
|
|
|
- if (isset($_SERVER['argv'])) $argv = $_SERVER['argv'];
|
|
|
- //修正部分服务器Rewrite 后再加参数不识别的问题(直接进入命令行的模式)
|
|
|
- if ($argv && $_SERVER['PHP_SELF'] == $_SERVER['SCRIPT_NAME']) {
|
|
|
- if (count($argv) == 1) return $args;
|
|
|
- array_shift($argv);
|
|
|
- $path = $argv[0];
|
|
|
- if(stristr($path, '?')) {
|
|
|
- $path = str_replace(stristr($path, '?'), '', $path);
|
|
|
- }
|
|
|
- $args = (array)$this->parseArgs($path);
|
|
|
+ if(!isset($_SERVER['__CLI_ARGS'])) {
|
|
|
+ return $args;
|
|
|
}
|
|
|
- return $args;
|
|
|
+ return (array) $this->parseURI($_SERVER['__CLI_ARGS'][1]);
|
|
|
}
|
|
|
|
|
|
/**
|