:https://github.com/DowneyL/di Github
.'
这个小程序是公司对自己的一个产品的需求,这个产品是Discuz(我知道没人用,所以不要吐槽),版本是X3.2或者GBK代码!
公司给了需求,稍微研究了一下小程序之后,就直接上班了,在网上找到了一个基础版(可耻的是,并不是所有的都是我自己写的),修复了一些bug,增加了一些功能,砍掉了一些功能。与GBK版Discuz兼容,简单设计了小程序的风格,产品基本成型。
之所以分享,是因为与Discuz相关的文档和产品真的太少了。我想把它们记录在一个平台上。如果我遇到一个人,我也许能给他一些东西。0.0
:关于API的开发有一些了解(刚好大神Summer出了新书,买了之后再观望)。微信微信官方账号开发(原生PHP开发微信微信官方账号,超神has微信)也成功将公司论坛与微信官方账号连接,实现了我们可以在微信官方账号获得论坛钱红包。微信小程序开发(官方文档,正在开发的小程序源代码,给了我很多启发)HTTP上的富文本分析到HTTPS小程序(一个优秀的开源项目:wxParse——微信小程序的富文本分析组件)用来分析你论坛上的帖子内容,你论坛上的粗体文本,彩色文本,图片等。所有这些都可以准确地显示在applet中。Flex布局在这里,我分享阮的两篇文章,Flex布局教程:语法,Flex布局教程:示例。两个UI组件,weui和zanui.
,主要有以下功能。需要记录
file_get_content()函数,该函数可能不在论坛中使用,已经在inc.php文件中实现了同样的功能。
Get_url_content()函数。
函数get _ URL _ content($ URL){ $ ch=curl _ init();curl_setopt($ch,CURLOPT_URL,$ URL);# curl_setopt($ch,CURLOPT_HEADER,1);curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,FALSE);curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,FALSE);if(!curl _ exec($ ch)){ error _ log(curl _ error($ ch));$ data=} else { $ data=curl _ multi _ get content($ ch);} curl _ close($ ch);返回$数据;}由于论坛整体格式为GBK,与微信服务器的交互必须为UTF-8编码,界面编码部分优化。
输出,在error.php下有array_iconv()函数对输出数组进行编码。
静态函数array_iconv($str,$in_charset='UTF-8 ',$ out _ CHARSET=CHARSET){ if(is _ array($ str)){ foreach($ str as $ k=$ v){ $ str[$ k]=wmapierror3360: array _ iconv($ v,$in_charset,$ out _ CHARSET);}返回$ str} else { if(is _ string($ str)){//return iconv(' UTF-8 ',' GBK//IGNORE ',$ str);返回mb_convert_encoding($str,$out_charset,$ in _ charset);} else { return $ str}}在验收的情况下,在inc.php下有getDataForCharset()功能,用于整合验收代码。
函数getDataForCharset($ data){ return(CHARSET!='UTF-8 ')?dhtmlspecialchars(wmapierror :3360 array _ iconv($ data)): dhtmlspecialchars($ data);}关闭了微信登录的功能。获取帖子时,添加了帖子的具体内容,消息。其他一些细节也进行了优化。
wxParse在输出帖子时做了一些解码Discuz Code的事情,同时获取图片附件和表情符号。接受时,分析加粗、高亮、斜体、字体等。正文的。让帖子按原样输出。上面的函数在wmapi/get_post_detail.php和WMAPI/get _ self _ post.php中突出显示。
:get _ URL _ content():file _ get _ content()(由于设置问题,生产环境可能会很怪异,请结合自己的服务器考虑):添加新的加载状态(加载.不再.还没有数据.)群发到首页,无法显示群名。当小程序将中文字符串传输到服务器时,首先是encodeURI(),然后是论坛服务器上的urldecode(),最后是UTF8-GBK转码。当然,如果必要的话。