php cli命令行模式运行mysql_connect不能连接和运行框架程序

1、首先看下php命令行下执行ci框架程序方法

 php index.php controller method
直接在后面跟上控制器名称和方法名称即可,为什么呢?来看下CI的路由就知道了

CI路由通过URI类来获取控制器名和方法名,在URI类中发现这样的判断

			if (php_sapi_name() == 'cli' or defined('STDIN'))
			{
				$this->_set_uri_string($this->_parse_cli_args());
				return;
			}

通过这样方法来获取参数的:

	private function _parse_cli_args()
	{
		$args = array_slice($_SERVER['argv'], 1);

		return $args ? '/' . implode('/', $args) : '';
	}

原来命令行下的参数都可以从这个里面获取:$_SERVER['argv']

既然有了参数,那么载入控制器和方法也就完成了。


2、php命令行下不能连接mysql,网上介绍好像是由于没有载入cli自己的php.ini文件,需要这样命令获取,我自己测试没通过在win环境下。但centos7.0服务器上是已经配置好了,可以直接在命令行下连接mysql,所以就没再继续深究。

php -c /etc/php.ini










你可能感兴趣的:(myphp)