diff --git a/LaneWeChat-master.zip b/LaneWeChat-master.zip deleted file mode 100644 index fd8441c..0000000 Binary files a/LaneWeChat-master.zip and /dev/null differ diff --git a/autoloader.php b/autoloader.php index 363c863..8f82cd7 100644 --- a/autoloader.php +++ b/autoloader.php @@ -1,14 +1,27 @@ "gQH47joAAAAAAAAAASxodHRwOi8vd2VpeGluLnFxLmNvbS9xL2taZ2Z3TVRtNzJXV1Brb3ZhYmJJAAIEZ23sUwMEmm3sUw==", + * //二维码的有效时间,以秒为单位。最大不超过1800。 + * "expire_seconds"=>60, + * //二维码图片解析后的地址,开发者可根据该地址自行生成需要的二维码图片 + * "url"=>"http://weixin.qq.com/q/kZgfwMTm72WWPkovabbI" + * ) + */ public static function createTicket($type, $expireSeconds, $sceneId){ $queryUrl = 'https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token='.AccessToken::getAccessToken(); $queryAction = 'POST'; @@ -16,6 +45,12 @@ class Popularize{ return Curl::callWebServer($queryUrl, $template, $queryAction); } + /** + * 生成带参数的二维码 - 第二步 通过ticket换取二维码 + * @param $ticket Popularize::createTicket()获得的 + * @param $filename String 文件路径,如果不为空,则会创建一个图片文件,二维码文件为jpg格式,保存到指定的路径 + * @return 直接echo本函数的返回值,并在调用页面添加header('Content-type: image/jpg');,将会展示出一个二维码的图片。 + */ public static function getQrcode($ticket, $filename=''){ $queryUrl = 'https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket='.urlencode($ticket); $queryAction = 'GET'; @@ -26,6 +61,12 @@ class Popularize{ return $result; } + /** + * 将一条长链接转成短链接。 + * 主要使用场景:开发者用于生成二维码的原链接(商品、支付二维码等)太长导致扫码速度和成功率下降,将原长链接通过此接口转成短链接再生成二维码将大大提升扫码速度和成功率。 + * @param $longUrl String 需要转换的长链接,支持http://、https://、weixin://wxpay 格式的url + * @return array('errcode'=>0, 'errmsg'=>'错误信息', 'short_url'=>'http://t.cn/asdasd')错误码为0表示正常 + */ public static function long2short($longUrl){ $queryUrl = 'https://api.weixin.qq.com/cgi-bin/shorturl?access_token='.AccessToken::getAccessToken(); $queryAction = 'POST'; diff --git a/core/responseinitiative.lib.php b/core/responseinitiative.lib.php index e5b8593..40d3ef2 100644 --- a/core/responseinitiative.lib.php +++ b/core/responseinitiative.lib.php @@ -1,16 +1,32 @@ $tousername, 'msgtype'=>'text', @@ -23,6 +39,12 @@ class ResponseInitiative{ return Curl::callWebServer(self::$queryUrl, $template, self::$action); } + /** + * @descrpition 图片 + * @param $tousername + * @param $mediaId 通过上传多媒体文件,得到的id。 + * @return string + */ public static function image($tousername, $mediaId){ //获取ACCESS_TOKEN $accessToken = AccessToken::getAccessToken(); @@ -40,6 +62,12 @@ class ResponseInitiative{ return Curl::callWebServer(self::$queryUrl, $template, self::$action); } + /** + * @descrpition 语音 + * @param $tousername + * @param $mediaId 通过上传多媒体文件,得到的id + * @return string + */ public static function voice($tousername, $mediaId){ //获取ACCESS_TOKEN $accessToken = AccessToken::getAccessToken(); @@ -57,6 +85,14 @@ class ResponseInitiative{ return Curl::callWebServer(self::$queryUrl, $template, self::$action); } + /** + * @descrpition 视频 + * @param $tousername + * @param $mediaId 通过上传多媒体文件,得到的id + * @param $title 标题 + * @param $description 描述 + * @return string + */ public static function video($tousername, $mediaId, $title, $description){ //获取ACCESS_TOKEN $accessToken = AccessToken::getAccessToken(); @@ -76,7 +112,16 @@ class ResponseInitiative{ return Curl::callWebServer(self::$queryUrl, $template, self::$action); } - + /** + * @descrpition 音乐 + * @param $tousername + * @param $title 标题 + * @param $description 描述 + * @param $musicUrl 音乐链接 + * @param $hqMusicUrl 高质量音乐链接,WIFI环境优先使用该链接播放音乐 + * @param $thumbMediaId 缩略图的媒体id,通过上传多媒体文件,得到的id + * @return string + */ public static function music($tousername, $title, $description, $musicUrl, $hqMusicUrl, $thumbMediaId){ //获取ACCESS_TOKEN $accessToken = AccessToken::getAccessToken(); @@ -98,6 +143,15 @@ class ResponseInitiative{ return Curl::callWebServer(self::$queryUrl, $template, self::$action); } + /** + * @descrpition 图文消息 - 单个项目的准备工作,用于内嵌到self::news()中。现调用本方法,再调用self::news() + * 多条图文消息信息,默认第一个item为大图,注意,如果调用本方法得到的数组总项数超过10,则将会无响应 + * @param $title 标题 + * @param $description 描述 + * @param $picUrl 图片链接,支持JPG、PNG格式,较好的效果为大图360*200,小图200*200 + * @param $url 点击图文消息跳转链接 + * @return string + */ public static function newsItem($title, $description, $picUrl, $url){ return $template = array( 'title'=>$title, @@ -107,12 +161,18 @@ class ResponseInitiative{ ); } + /** + * @descrpition 图文 - 先调用self::newsItem()再调用本方法 + * @param $tousername + * @param $item 数组,每个项由self::newsItem()返回 + * @return string + */ public static function news($tousername, $item){ - + //获取ACCESS_TOKEN $accessToken = AccessToken::getAccessToken(); self::$queryUrl = self::$queryUrl.$accessToken; - + //开始 $template = array( 'touser'=>$tousername, 'msgtype'=>'news', diff --git a/core/wechatrequest.lib.php b/core/wechatrequest.lib.php index 5fe24be..f39c50e 100644 --- a/core/wechatrequest.lib.php +++ b/core/wechatrequest.lib.php @@ -1,59 +1,87 @@ -以下是去除注释后的PHP代码: - -```php "; $from_xml = sprintf($format, $encrypt); +// 第三方收到公众号平台发送的消息 $msg = ''; $errCode = $pc->decryptMsg($msg_sign, $timeStamp, $nonce, $from_xml, $msg); if ($errCode == 0) { @@ -281,6 +450,5 @@ class WechatRequest{ print($errCode . "\n"); } } -} - +}