| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 | <?phpnamespace KIF\Core;use KIF\Core\Config;use Exception;/** *  * In Process Call的缩写,即 进程内调用 * 目的: *     1、保护上下文环境 *     2、简化调用代码 * 使用场景: *     支持在任何地方调用基于KIF框架的app。 * @author husserlgao * */class IPC {	/**	 * 	 * 调用	 * @param string $conf_file 要调用的app类的配置文件	 * @param callback $callback 回调执行的函数	 */	static public function call($callback, $conf_file) {		# 尝试保存调用前的配置		try {			$pre_app_conf_path = Config::getInstance()->get('conf_path');		} catch (Exception $e) {			$pre_app_conf_path = false;		}				Config::load($conf_file);		$callback();				# 恢复到调用前的应用配置		if ($pre_app_conf_path) {			Config::load($pre_app_conf_path);		}	}	/**	 * 	 * 调用!!!这是个临时的方法,只因没有时间去把调call的地方改过来。	 * @param string $conf_file 要调用的app类的配置文件	 * @param callback $callback 回调执行的函数	 */	static public function call2($callback, $conf_file) {		# 尝试保存调用前的配置		try {			$pre_app_conf_path = Config::getInstance()->get('conf_path');		} catch (Exception $e) {			$pre_app_conf_path = false;		}				Config::load($conf_file);		$callback();				# 恢复到调用前的应用配置		if ($pre_app_conf_path) {			Config::load($pre_app_conf_path);		}	}}
 |