/** * 把微信的图片上传到又拍云服务器上 * @param string $medil * @return string */ public function updateWxImage($medil) { if (substr($medil, 0, 4) == 'http') { return $medil; } $accesstoken = WX::actionAccessToken(); $imgurl = "https://api.weixin.qq.com/cgi-bin/media/get?access_token={$accesstoken}&media_id={$medil}"; $upyun = new UpYun(UPYUN_BUCKET, UPYUN_USER, UPYUN_PASSWORD); $fh = file_get_contents($imgurl); if (empty($fh)) { return ""; } $md5 = md5($this->openid); $path = "/" . substr($md5, 0, 4) . '/' . $md5 . '/' . $medil . '.jpg'; $rsp = $upyun->writeFile($path, $fh, True); // 上传图片,自动创建目录 return UPYUN_CDN . $path; }
public static function getShortUrl($url) { $accesstoken = WX::actionAccessToken(); $urlpost = "https://api.weixin.qq.com/cgi-bin/shorturl?access_token={$accesstoken}"; $params = array('action' => 'long2short', 'long_url' => $url); $response = Yii::app()->curl->post($urlpost, $params, 'json'); Yii::log($url, 'trace', 'GET short url'); $response = json_decode($response, true); Yii::log(CVarDumper::dumpAsString($response), 'error', 'GET short url'); if ($response['errcode'] == 0) { return $response['short_url']; } else { if ($response['errcode'] == 41001) { // WX::actionAccessToken(true); } return ""; } }