首页 > 后端开发 > 正文

php原生微信开发框架 微信小程序开发用什么语言和框架

2023-09-26 00:23:02 | 我爱编程网

今天,我爱编程网小编为关注后端开发的同学们准备了php原生微信开发框架 微信小程序开发用什么语言和框架,下面一起来看一下吧。

php原生微信开发框架 微信小程序开发用什么语言和框架

微信小程序开发用什么语言和框架

微信小程序开发一般有php语言和java语言两种语言、html/css/js三件套都要会。

微信小程序常见使用“MINA”框架,这个框架为微信小程序的运行提供了丰富的组件和API。微信小程序开发者要学会和掌握小程序的框架结构、数据绑定机制、模板、数据缓存、常用组件和API等相关知识。 我爱编程网

php原生微信开发框架 微信小程序开发用什么语言和框架

开发微信小程序需要用到什么技术和框架?

首先前端老三样是必须的(HTML,CSS,JAVASCRIPT,如果掌握点es6的知识是最好的)

第二熟读微信小程序的开发文档,你就会发现原来小程序就是一个类似于vue的框架(微信内部的一个小框架,我是这么理解的)

第三电脑上下载并安装微信开发者工具,方便开发和调试

如果需要后台那么需要掌握的就比较多了,后台语言比如java,node,php,python等都可以,

另外需要说明的是小程序的接口是需要https协议的,所以楼主做小程序的时候得注意,服务器和域名得符合

就这么多,小程序开发起来还是比较简单。希望对你有帮助

php原生微信开发框架 微信小程序开发用什么语言和框架

php如何进行微信公众号开发



php如何进行微信公众号开发
1、配置相关服务器
(1) 如下,把自己的服务器ip白名单配置上;
(2) 开始配置令牌,配置令牌时先需要把现成的代码放到自己的服务器上面,代码里面包含自己的设置的令牌号码,这样才可以配置成功。
注意:下面这个代码在配置好后,即可从服务器上面删除代码或者把index.php改一个名字。
url必须是完整的url,比如
<?php
/**
* wechat php test
* update time: 20141008
*/
//define your token
//下面的即是你设置的token令牌
define("TOKEN", "zj123456");
$wechatObj = new wechatCallbackapiTest();
$wechatObj->valid();
class wechatCallbackapiTest
{
public function valid()
{
$echoStr = $_GET["echostr"];
//valid signature , option
if ($this->checkSignature()) {
echo $echoStr;
exit;
}
}
public function responseMsg()
{
//get post data, May be due to the different environments
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
//extract post data
if (!empty($postStr)) {
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$keyword = trim($postObj->Content);
$time = time();
$textTpl = "<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Content><![CDATA[%s]]></Content>
<FuncFlag>0</FuncFlag>
</xml>";
if (!empty($keyword)) {
$msgType = "text";
$contentStr = "Welcome to wechat world!";
$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
echo $resultStr;
} else {
echo "Input something...";
}
} else {
echo "";
exit;
}
}
private function checkSignature()
{
$signature = $_GET["signature"];
$timestamp = $_GET["timestamp"];
$nonce = $_GET["nonce"];
$token = TOKEN;
$tmpArr = array($token, $timestamp, $nonce);
sort($tmpArr, SORT_STRING);
$tmpStr = implode($tmpArr);
$tmpStr = sha1($tmpStr);
if ($tmpStr == $signature) {
return true;
} else {
return false;
}
}
}2、配置ok后,接下来就可以实现相关的微信公众号相关功能,比如说自动回复机器人。
代码包含3部分,当然,自动回复机器人,下面的代码有些用不到。
(1) 、index.php
<?php
define("APPID","xxxxxxx");
define("APPSECRET","xxxxxx");
define("TOKEN","zj123456");
require("./wechat.inc.php");
$wechat = new WeChat(APPID,APPSECRET,TOKEN);
$wechat->responseMsg();
?>(2)、wechat.inc.php
<?php
class WeChat
{
private $_appid;
private $_appsecret;
private $_token;
public function __construct($appid, $appsecret, $token)
{
$this->_appid = $appid;
$this->_appsecret = $appsecret;
$this->_token = $token;
}
/**
*_request():发出请求
*@curl:访问的URL
*@https:安全访问协议
*@method:请求的方式,默认为get
*@data:post方式请求时上传的数据
**/
private function _request($curl, $https = true, $method = 'get', $data = null, $headers = null)
{
$ch = curl_init(); //初始化
curl_setopt($ch, CURLOPT_URL, $curl); //设置访问的URL
// curl_setopt($ch, CURLOPT_HEADER, false); //设置不需要头信息
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); //只获取页面内容,但不输出
if ($https) {
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); //不做服务器认证
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); //不做客户端认证
}
if ($method == 'post') {
curl_setopt($ch, CURLOPT_POST, true); //设置请求是POST方式
curl_setopt($ch, CURLOPT_POSTFIELDS, $data); //设置POST请求的数据
}
$str = curl_exec($ch); //执行访问,返回结果
curl_close($ch); //关闭curl,释放资源
return $str;
}
/**
*_getAccesstoken():获取access token
**/
private function _getAccesstoken()
{
$file = './accesstoken'; //用于保存access token
if (file_exists($file)) { //判断文件是否存在
$content = file_get_contents($file); //获取文件内容
$content = json_decode($content); //json解码
if (time() - filemtime($file) < $content->expires_in) //判断文件是否过期
{
return $content->access_token;
}
//返回access token
}
$content = $this->_request(" . $this->_appid . "&secret=" . $this->_appsecret); //获取access token的json对象
file_put_contents($file, $content); //保存json对象到指定文件
$content = json_decode($content); //进行json解码
return $content->access_token; //返回access token
}
/**
*_getTicket():获取ticket,用于以后换取二维码
*@expires_secords:二维码有效期(秒)
*@type :二维码类型(临时或永久)
*@scene:场景编号
**/
public function _getTicket($expires_secords = 604800, $type = "temp", $scene = 1)
{
if ($type == "temp") { //临时二维码的处理
$data = '{"expire_seconds":' . $expires_secords . ', "action_name": "QR_SCENE", "action_info": {"scene": {"scene_id": ' . $scene . '}}}'; //临时二维码生成所需提交数据
return $this->_request(" . $this->_getAccesstoken(), true, "post", $data, ''); //发出请求并获得ticket
} else { //永久二维码的处理
$data = '{"action_name": "QR_LIMIT_SCENE", "action_info": {"scene": {"scene_id": ' . $scene . '}}}'; //永久二维码生成所需提交数据
return $this->_request(" . $this->_getAccesstoken(), true, "post", $data, ''); //发出请求并获得ticket
}
}
/**
*_getQRCode():获取二维码
*@expires_secords:二维码有效期(秒)
*@type:二维码类型
*@scene:场景编号
**/
public function _getQRCode($expires_secords, $type, $scene)
{
$content = json_decode($this->_getTicket($expires_secords, $type, $scene)); //发出请求并获得ticket的json对象
$ticket = $content->ticket; //获取ticket
$image = $this->_request(" . urlencode($ticket)
); //发出请求获得二维码图像
//$file = "./".$type.$scene.".jpg";// 可以将生成的二维码保存到本地,便于使用
//file_put_contents($file, $image);//保存二维码
return $image;
}
public function valid() //检查安全性
{
$echoStr = $_GET["echostr"];
//valid signature , option
if ($this->checkSignature()) {
echo $echoStr;
exit;
}
}
public function responseMsg()
{
//get post data, May be due to the different environments
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"]; //获得用户发送信息
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
switch ($postObj->MsgType) {
case 'event':
$this->_doEvent($postObj);
break;
case 'text':
$this->_doText($postObj);
break;
case 'image':
$this->_doImage($postObj);
break;
case 'voice':
$this->_doVoice($postObj);
break;
case 'video':
$this->_doVideo($postObj);
break;
case 'location':
$this->_doLocation($postObj);
break;
default:exit;
}
}
private function _doEvent($postObj)
{ //事件处理
switch ($postObj->Event) {
case 'subscribe': //订阅
$this->_doSubscribe($postObj);
break;
case 'unsubscribe': //取消订阅
$this->_doUnsubscribe($postObj);
break;
default:;
}
}
private function _doSubscribe($postObj)
{
$tpltext = '<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[%s]]></Content>
</xml>';
$access_token = $this->_getAccesstoken();
$userInfo = $this->getUserinfo($access_token, $postObj->FromUserName);
$str = sprintf($tpltext, $postObj->FromUserName, $postObj->ToUserName, time(), '欢迎您关注' . 'Geroge Zhang' . '的世界!');
//还可以保存用户的信息到数据库
echo $str;
}
private function _doUnsubscribe($postObj)
{
; //把用户的信息从数据库中删除
}
private function _doText($postObj)
{
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$keyword = trim($postObj->Content);
$time = time();
$textTpl = "<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Content><![CDATA[%s]]></Content>
<FuncFlag>0</FuncFlag>
</xml>";
if (!empty($keyword)) {
// $data_add = "question=" . $keyword;
// $appcode = "2fd264cdc7914b308e51ab986f73fb86";
// $headers = array();
// array_push($headers, "Authorization:APPCODE " . $appcode);
// $contentStr = $this->_request("" . $data_add, false, "GET", '', $headers);
$data_add = urlencode($keyword);
$contentStr = $this->_request(";appid=0&msg=" . $data_add, false, "GET", '', '');
$contentStr = json_de

以上就是我爱编程网小编为大家带来的php原生微信开发框架 微信小程序开发用什么语言和框架,希望对大家有帮助,了解更多相关资讯请关注我爱编程网。
与“php原生微信开发框架 微信小程序开发用什么语言和框架”相关推荐
微信小程序php框架哪个好 微信小程序开发语言,微信小程序开发用什么语言
微信小程序php框架哪个好 微信小程序开发语言,微信小程序开发用什么语言

微信小程序开发用什么语言和框架微信小程序开发一般有php语言和java语言两种语言、html/css/js三件套都要会。微信小程序常见使用“MINA”框架,这个框架为微信小程序的运行提供了丰富的组件和API。微信小程序开发者要学会和掌握小程序的框架结构、数据绑定机制、模板、数据缓存、常用组件和API等相关知识。微信小程序的开发需要掌握哪些开发语言?1、学习html/css

2023-10-07 04:53:51
php订餐微信小程序框架 微信小程序开发用什么语言和框架
php订餐微信小程序框架 微信小程序开发用什么语言和框架

微信小程序开发用什么语言和框架微信小程序开发一般有php语言和java语言两种语言、html/css/js三件套都要会。微信小程序常见使用“MINA”框架,这个框架为微信小程序的运行提供了丰富的组件和API。微信小程序开发者要学会和掌握小程序的框架结构、数据绑定机制、模板、数据缓存、常用组件和API等相关知识。微信点餐小程序怎么做?现在人们工作繁忙,为了节省时间都在网上订餐,

2023-10-05 14:17:55
微信小程序后端php框架 微信小程序开发用什么语言和框架
微信小程序后端php框架 微信小程序开发用什么语言和框架

小程序后端怎么搭建有以下七条。1.打开宝塔,配置站点和ssl证书,这里我是用的是宝塔自带的ssl证书,如果你的域名是阿里云、腾讯云的会赠送免费证书。2.配置好站点后,上传后端cms源码到站点根目录并且解压。3.解压完成后先不要急着安装,找到文件wxApi/config/dbs.php修改数据库账号密码。4.然后我们在访问域名安装-安装完成后后台路径是,你的域名后面+/admins.p

2023-10-05 21:03:32
php中开发微信框架 微信小程序开发用什么语言和框架
php中开发微信框架 微信小程序开发用什么语言和框架

微信小程序开发用什么语言和框架微信小程序开发一般有php语言和java语言两种语言、html/css/js三件套都要会。微信小程序常见使用“MINA”框架,这个框架为微信小程序的运行提供了丰富的组件和API。微信小程序开发者要学会和掌握小程序的框架结构、数据绑定机制、模板、数据缓存、常用组件和API等相关知识。开发微信小程序需要用到什么技术和框架?首先前端老三样是必须的(H

2023-09-26 03:44:15
微信端php开发框架 微信小程序开发用什么语言和框架
微信端php开发框架 微信小程序开发用什么语言和框架

微信小程序开发用什么语言和框架微信小程序开发一般有php语言和java语言两种语言、html/css/js三件套都要会。微信小程序常见使用“MINA”框架,这个框架为微信小程序的运行提供了丰富的组件和API。微信小程序开发者要学会和掌握小程序的框架结构、数据绑定机制、模板、数据缓存、常用组件和API等相关知识。PHP开发用哪种框架PHP开发常用框架一、CI框架CI

2023-09-27 05:48:18
php微信管理框架 微信小程序开发用什么语言和框架
php微信管理框架 微信小程序开发用什么语言和框架

微信小程序开发用什么语言和框架微信小程序开发一般有php语言和java语言两种语言、html/css/js三件套都要会。微信小程序常见使用“MINA”框架,这个框架为微信小程序的运行提供了丰富的组件和API。微信小程序开发者要学会和掌握小程序的框架结构、数据绑定机制、模板、数据缓存、常用组件和API等相关知识。PHP有哪些流行的框架PHP有哪些流行的框架?PHP有哪些流

2023-09-15 20:52:09
微信官方php框架 微信小程序开发用什么语言和框架
微信官方php框架 微信小程序开发用什么语言和框架

微信小程序开发用什么语言和框架微信小程序开发一般有php语言和java语言两种语言、html/css/js三件套都要会。微信小程序常见使用“MINA”框架,这个框架为微信小程序的运行提供了丰富的组件和API。微信小程序开发者要学会和掌握小程序的框架结构、数据绑定机制、模板、数据缓存、常用组件和API等相关知识。php有没有其他好用的微服务框架?微服务这个技术在这几年很火啊,

2023-09-18 19:00:02
php免费微信框架 微信小程序开发用什么语言和框架
php免费微信框架 微信小程序开发用什么语言和框架

怎么样使用php的laravel框架快速集成微信登录1.安装php_weixin_provider在项目下运行composerrequirethirdproviders/weixin,即可完成安装。安装成功后,在项目的vendor目录下应该能看到php_weixin_provider的库文件:image2.配置微信登录的参数一共有7个参数可以配置,分别是:client_i

2023-09-22 13:24:10