资源简介
1、基于ThinkPHP框架,微信授权登录并获取用户基本信息。
2、解决微信授权回调页面域名只能设置一个的问题。
3、使用Redis缓存优化效率。
代码片段和文件信息
/***********************************************************************
Copyright 2006-2007 Ma Bingyao
These sources is free software. Redistributions of source code must
retain the above copyright notice. Redistributions in binary form
must reproduce the above copyright notice. You can redistribute it
freely. You can use it with any free or commercial software.
These sources is distributed in the hope that it will be useful
but WITHOUT ANY WARRANTY. Without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
You may contact the author by:
e-mail: andot@coolcode.cn
*************************************************************************/
#ifdef HAVE_CONFIG_H
#include “config.h“
#endif
#include “php.h“
#if HAVE_XXTEA
#include “php_xxtea.h“
#include “ext/standard/info.h“ /* for phpinfo() functions */
#include “xxtea.h“
/* compiled function list so Zend knows what‘s in this module */
zend_function_entry xxtea_functions[] =
{
ZEND_FE(xxtea_encrypt NULL)
ZEND_FE(xxtea_decrypt NULL)
ZEND_FE(xxtea_info NULL)
{NULL NULL NULL}
};
/* compiled module information */
zend_module_entry xxtea_module_entry =
{
STANDARD_MODULE_HEADER
XXTEA_MODULE_NAME
xxtea_functions
ZEND_MINIT(xxtea)
ZEND_MSHUTDOWN(xxtea)
NULL
NULL
ZEND_MINFO(xxtea)
XXTEA_VERSION
STANDARD_MODULE_PROPERTIES
};
/* implement standard “stub“ routine to introduce ourselves to Zend */
#if defined(COMPILE_DL_XXTEA)
ZEND_GET_MODULE(xxtea)
#endif
static xxtea_long *xxtea_to_long_array(unsigned char *data xxtea_long len int include_length xxtea_long *ret_len) {
xxtea_long i n *result;
n = len >> 2;
n = (((len & 3) == 0) ? n : n + 1);
if (include_length) {
result = (xxtea_long *)emalloc((n + 1) << 2);
result[n] = len;
*ret_len = n + 1;
} else {
result = (xxtea_long *)emalloc(n << 2);
*ret_len = n;
}
memset(result 0 n << 2);
for (i = 0; i < len; i++) {
result[i >> 2] |= (xxtea_long)data[i] << ((i & 3) << 3);
}
return result;
}
static unsigned char *xxtea_to_byte_array(xxtea_long *data xxtea_long len int include_length xxtea_long *ret_len) {
xxtea_long i n m;
unsigned char *result;
n = len << 2;
if (include_length) {
m = data[len - 1];
if ((m < n - 7) || (m > n - 4)) return NULL;
n = m;
}
result = (unsigned char *)emalloc(n + 1);
for (i = 0; i < n; i++) {
result[i] = (unsigned char)((data[i >> 2] >> ((i & 3) << 3)) & 0xff);
}
result[n] = ‘\0‘;
*ret_len = n;
return result;
}
static unsigned char *php_xxtea_encrypt(unsigned char *data xxtea_long len unsigned char *key xxtea_long *ret_len) {
unsigned char *result;
xxtea_long *v *k v_len k_len;
v = xxtea_to_long_array(data len 1 &v_len);
k = xxtea_to_long_array(key 16 0 &k_len);
xxtea_long_encrypt(v v_len k);
result 属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-03-01 12:06 weixin\
文件 174 2017-12-06 10:59 weixin\.buildpath
文件 258 2016-08-19 15:37 weixin\.htaccess
文件 516 2017-12-05 11:38 weixin\.project
目录 0 2018-03-01 12:06 weixin\.settings\
文件 57 2015-11-23 20:25 weixin\.settings\org.eclipse.core.resources.prefs
目录 0 2018-03-01 12:06 weixin\Service\
目录 0 2018-03-01 12:06 weixin\Service\Conf\
文件 2828 2018-03-01 12:22 weixin\Service\Conf\config.php
目录 0 2018-03-01 12:06 weixin\Service\Lib\
目录 0 2018-03-01 12:06 weixin\Service\Lib\Action\
文件 4873 2018-03-01 12:21 weixin\Service\Lib\Action\CommonAction.class.php
目录 0 2018-03-01 12:06 weixin\Service\Lib\Action\Home\
文件 8515 2018-03-01 12:20 weixin\Service\Lib\Action\Home\WeixinAction.class.php
文件 787 2017-11-28 13:27 weixin\Service\Lib\Action\IndexAction.class.php
目录 0 2018-03-01 12:19 weixin\Service\Lib\Entrance\
目录 0 2018-03-01 12:06 weixin\Service\Lib\Entrance\Exception\
文件 258 2017-12-06 12:06 weixin\Service\Lib\Entrance\Exception\WeixinException.php
文件 560 2017-09-27 11:11 weixin\Service\Lib\Entrance\RedisUtil.class.php
目录 0 2018-03-01 12:06 weixin\Service\Lib\Model\
文件 460 2017-12-05 11:53 weixin\Service\Lib\Model\ba
文件 177 2017-11-28 13:30 weixin\Service\Lib\Model\ConstModel.class.php
目录 0 2018-03-01 12:23 weixin\Service\Lib\Model\Home\
目录 0 2018-03-01 12:23 weixin\Service\Runtime\
目录 0 2018-03-01 12:06 weixin\Service\Tpl\
目录 0 2018-03-01 12:06 weixin\Service\Tpl\default\
目录 0 2018-03-01 12:23 weixin\Service\Tpl\default\Home\
目录 0 2018-03-01 12:06 weixin\ThinkPHP\
目录 0 2018-03-01 12:06 weixin\ThinkPHP\Common\
文件 1778 2014-09-17 15:17 weixin\ThinkPHP\Common\alias.php
文件 4214 2014-09-17 15:17 weixin\ThinkPHP\Common\compat.php
............此处省略338个文件信息
相关资源
- 校园疫情防控进出登记管理系统THIN
- 手写签名,PHP +js+html5
- 学籍管理系统(php源码+mysql数据库)
- 新闻管理系统(原生php源码)
- php图书管理系统源码(附数据库)
- php文章管理系统源码(附数据库)
- PHP图书馆管理系统(源码 数据库脚本
- PHP考试答题系统
- 基于PHP的学生管理系统(优雅版)
- PHP物品管理系统
- php新闻管理系统源码
- resetful框架
- PHP免杀大马-过D盾过安全狗WAF免杀ph
- 友邻B2B系统(PHPB2B) 5.0.2 UTF-8
- 新型冠状病毒肺炎疫情实时图PHP源码
- PHP调用企业微信API接口底层类库
- 基于PHP的统一检索系统的设计与实现
- PHP版本的网络打印机提交打印代码
- conefor操作(Manual_Conefor_26)
- php Goto解密
- PHP大转盘抽奖
- php模拟文件上传(socket_upload.php)
- php连接mysql实现界面crud(附数据库文
- php在线相册(附数据库脚本)
- PHP在线人数统计
- php+Ajax无刷新分页列表
- PHP失物招领
- php 随机生成颜色
- php-redis中文帮助手册.chm
- php远程控制脚本
川公网安备 51152502000135号
评论
共有 条评论