public function call($method, $params, $mod, $add, $conf) { $sign = Pi::get('global.innerapi_sign', ''); $sign_name = Pi::get('global.innerapi_sign_name', '_pi_inner_nm'); if (isset($conf['ip']) && isset($conf['net']) && $conf['net'] == 'http') { $args = array(); $args['mod'] = $mod; $args['add'] = $add; $args['method'] = $method; $args['param'] = $params; $args[$sign_name] = $sign; try { $curl = new HttpClient(); $timeout = isset($conf['timeout']) ? intval($conf['timeout']) : 10; $res = $curl->sendPostData($conf['ip'], $args, $timeout); if ($curl->hasError() === false) { $data = unserialize($res); $data = isset($data[INNER_RES_PACK]) ? $data[INNER_RES_PACK] : $data; return $data; } else { throw new Exception('curl error', 5011); } } catch (Exception $e) { return array(INNER_ERR => 5011, 'msg' => $curl->getErrorMsg()); } } throw new Exception('inner api err conf : ' . var_export($conf), 5004); }