function buildRequestParaToString($para_temp) { $para = $this->buildRequestPara($para_temp); $request_data = createLinkstringUrlencode($para); return $request_data; }
switch (strtoupper(trim($this->alipay_config['sign_type']))) { case "MD5" : $mysign = md5Sign($prestr, $this -> alipay_config['key']); break; case "RSA" : $mysign = rsaSign($prestr, $this -> alipay_config['private_key_path']); break;
/** * 生成要请求给支付宝的参数数组 * @param $para_temp 请求前的参数数组 * @return 要请求的参数数组字符串 */ function buildRequestParaToString($para_temp) { //待请求参数数组 $para = $this->buildRequestPara($para_temp); //把参数组中所有元素,按照“参数=参数值”的模式用“&”字符拼接成字符串,并对字符串做urlencode编码 $request_data = createLinkstringUrlencode($para); // $request_data = 'partner="2088021351438614"&seller_id="*****@*****.**"&out_trade_no="120517540212075"&subject="测试的商品"&body="该测试商品的详细描述"&total_fee="0.01"¬ify_url="http://notify.msp.hk/notify.htm"&service="mobile.securitypay.pay"&payment_type="1"&_input_charset="utf-8"&it_b_pay="30m"&return_url="m.alipay.com"'. '&sign="'.urlencode($para).'"&sign_type="RSA"'; return $request_data; }
/** * @车源列表 * http://api.che300.com/service/getCarList * @param zone unsigned int 城市标识,可以通过车300城市数据接口拿回车300所支持的所有城市标识,也可以申请合作成功之后提供网站自己的城市信息进行两者之间的映射。 * @param page unsigned int 车源列表页码,也就是需要拿第几页车源,每页最多会有20条车源,如果不足20条会全部返回。如果不给的话,默认为1。 * @param keyword string 搜索关键字,根据改关键字进行搜索提供车源,如:宝马X1。 * @param carBrand unsigned int 品牌ID,可以通过车300的品牌数据接口拿回所有的品牌相关信息。 * @param carSeries unsigned int 车系ID,可以通过车300的车系数据接口拿回指定品牌下的所有车系相关信息。 * @param carModel unsigned int 车型ID,可以通过车300的车型数据接口拿回指定车系下的所有车型相关信息。 * @param carYear string 车龄,既可以指定一个区间(如:3-5),也可以指定一个具体的上牌年份(如:2009)。 * @param carMile string 车辆里程,既可以指定一个区间(如:3-5),也可以指定一个具体的公里数(如:10),该参数表达的意思是大于等于多少万公里。 * @param carPrice string 车辆价格,既可以指定一个区间(如:3-5),也可以指定一个具体的数目(如:10),该参数表达的意思是大于等于多少万元。 * @param sellerType string 卖家类型,1表示个人,2表示商家,不指定的话返回结果就是个人和商家混合车源。 * @param vprSort string 性价比排序,指定返回的车源按照性价比排序。可以取值asc和desc,其中asc表示升序,desc表示降序。该排序和其它排序方式一样,只会有一种生效,在调用接口的时候只需要指定一种排序即可。如果不指定的话,默认会是下面的发布时间排序。 * @param priceSort string 价格排序,指定返回的车源按照价格排序。可以取值asc和desc,其中asc表示升序,desc表示降序。该排序和其它排序方式一样,只会有一种生效,在调用接口的时候只需要指定一种排序即可。如果不指定的话,默认会是下面的发布时间排序。 * @param registerDateSort string 上牌时间排序,指定返回的车源按照上牌时间排序。可以取值asc和desc,其中asc表示升序,desc表示降序。该排序和其它排序方式一样,只会有一种生效,在调用接口的时候只需要指定一种排序即可。如果不指定的话,默认会是下面的发布时间排序。 * @param mileAgeSort string 车辆里程排序,指定返回的车源按照车辆里程排序。可以取值asc和desc,其中asc表示升序,desc表示降序。该排序和其它排序方式一样,只会有一种生效,在调用接口的时候只需要指定一种排序即可。如果不指定的话,默认会是下面的发布时间排序。 * @param postDateSort string 发布时间排序,指定返回的车源按照发布时间排序。可以取值asc和desc,其中asc表示升序,desc表示降序。该排序和其它排序方式一样,只会有一种生效,在调用接口的时候只需要指定一种排序即可。如果不指定的话,默认会是下面的发布时间排序。 * @return array * @example:$data=array('zone'=>'','page'=>'','keyword'=>'','carBrand'=>'','carSeries'=>'','carModel'=>'', 'carYear'=>'','carMile'=>'', 'carPrice'=>'','sellerType'=>'', 'vprSort'=>'', 'priceSort'=>'', 'registerDateSort'=>'','mileAgeSort'=>'','postDateSort'=>''); */ public function getCarList($data) { $this->param['zone'] = $data['zone']; $this->param['page'] = $data['page']; $this->param['keyword'] = $data['keyword']; $this->param['carBrand'] = $data['carBrand']; $this->param['carSeries'] = $data['carSeries']; $this->param['carModel'] = $data['carModel']; $this->param['carYear'] = $data['carYear']; $this->param['carMile'] = $data['carMile']; $this->param['carPrice'] = $data['carPrice']; $this->param['sellerType'] = $data['sellerType']; $this->param['vprSort'] = $data['vprSort']; $this->param['priceSort'] = $data['priceSort']; $this->param['registerDateSort'] = $data['registerDateSort']; $this->param['mileAgeSort'] = $data['mileAgeSort']; $this->param['postDateSort'] = $data['postDateSort']; $this->param = array_filter($this->param); $paramStr = createLinkstringUrlencode($this->param); $url = $this->apiUrl . 'getCarList?' . $paramStr; $result = https_request($url); if (empty($result)) { $result = array('status' => false, 'msg' => '无法获取che300数据'); } else { $result = json_decode($result, true); } return $result; }