nationcode = $nationCode; $telElement->mobile = $phoneNumbers[$i]; array_push($tel, $telElement); } while (++$i < count($phoneNumbers)); return $tel; } /** * 生成签名 * * @param string $appkey sdkappid对应的appkey * @param string $random 随机正整数 * @param string $curTime 当前时间 * @param array $phoneNumber 手机号码 * @return string 签名结果 */ public function calculateSigForTempl($appkey, $random, $curTime, $phoneNumber) { $phoneNumbers = array($phoneNumber); return $this->calculateSigForTemplAndPhoneNumbers($appkey, $random, $curTime, $phoneNumbers); } /** * 生成签名 * * @param string $appkey sdkappid对应的appkey * @param string $random 随机正整数 * @param string $curTime 当前时间 * @return string 签名结果 */ public function calculateSigForPuller($appkey, $random, $curTime) { return hash("sha256", "appkey=".$appkey."&random=".$random ."&time=".$curTime); } /** * 生成上传文件授权 * * @param string $appkey sdkappid对应的appkey * @param string $random 随机正整数 * @param string $curTime 当前时间 * @param array $fileSha1Sum 文件sha1sum * @return string 授权结果 */ public function calculateAuth($appkey, $random, $curTime, $fileSha1Sum) { return hash("sha256", "appkey=".$appkey."&random=".$random ."&time=".$curTime."&content-sha1=".$fileSha1Sum); } /** * 生成sha1sum * * @param string $content 内容 * @return string 内容sha1散列值 */ public function sha1sum($content) { return hash("sha1", $content); } /** * 发送请求 * * @param string $url 请求地址 * @param array $dataObj 请求内容 * @return string 应答json字符串 */ public function sendCurlPost($url, $dataObj) { $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_HEADER, 0); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 60); curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($dataObj)); curl_setopt($curl, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json; charset=utf-8', 'Content-Length: ' . strlen(json_encode($dataObj))) ); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); $ret = curl_exec($curl); if (false == $ret) { // curl_exec failed $result = "{ \"result\":" . -2 . ",\"errmsg\":\"" . curl_error($curl) . "\"}"; } else { $rsp = curl_getinfo($curl, CURLINFO_HTTP_CODE); if (200 != $rsp) { $result = "{ \"result\":" . -1 . ",\"errmsg\":\"". $rsp . " " . curl_error($curl) ."\"}"; } else { $result = $ret; } } curl_close($curl); return $result; } /** * 发送请求 * * @param string $req 请求对象 * @return string 应答json字符串 */ public function fetch($req) { $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $req->url); curl_setopt($curl, CURLOPT_HTTPHEADER, $req->headers); curl_setopt($curl, CURLOPT_POSTFIELDS, $req->body); curl_setopt($curl, CURLOPT_HEADER, 0); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 60); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); $result = curl_exec($curl); if (false == $result) { // curl_exec failed $result = "{ \"result\":" . -2 . ",\"errmsg\":\"" . curl_error($curl) . "\"}"; } else { $code = curl_getinfo($curl, CURLINFO_HTTP_CODE); if (200 != $code) { $result = "{ \"result\":" . -1 . ",\"errmsg\":\"". $rsp . " " . curl_error($curl) ."\"}"; } } curl_close($curl); return $result; } }