php获取微信小程序直播列表,phpcms开发微信小程序接口之获取栏目信息(get_categorys.php)...

首页在phpcms v9的api文件夹下创建get_categorys.php,访问路径是:***/api.php?op=get_category

php代码:

/**

** 栏目调用接口,栏目相关信息

** catid 栏目id ,catid为空调用全部栏目

** parentid 父栏目id 为0是调用一级栏目 为-1时调用全部栏目

** catid和parentid 不能同时存在

** 如果存在catid则调用当前栏目信息,否则调用全部栏目信息

** 版权:石头建站 http://www.sootou.com ** 时间:2017-12-18

*/

defined('IN_PHPCMS') or exit('No permission resources.');

pc_base::load_app_func('util','content');

$siteid = 1;

$r = array();

$wxid = trim($_GET['wxid']) ? trim($_GET['wxid']) : '';

$catid = intval($_GET['catid']); //用来接收请求的栏目id

$parentid = trim($_GET['parentid']) ? intval($_GET['parentid']) : -1; //父栏目

$CATEGORYS = getcache('category_content_'.$siteid,'commons');

$category_db = pc_base::load_model('category_model');

/*正式逻辑*/

if($wxid == "" || empty($wxid)){

echo "微信id填写错误,请修改app.json配置";

}else{

$xiao_db = pc_base::load_model('xiaochengxu_model');

$xiao = $xiao_db->get_one(array('wxid'=>$wxid, 'status'=>"1"));

if($xiao){

/*-----------读取开始------------------*/

if(isset($catid) && $catid !=''){

$r = $category_db->get_one(array('catid' => $catid));

$childid = $r['arrchildid'];

$arrchildid = explode(',',$childid);

$childs = array();

foreach($arrchildid as $arr){

if($arr != $catid){

$childs[] = $arr;

}

}

//$r['arrchildid'] = implode(',',$childs);

$r['arrchildid'] = $childs;

}else{

if($parentid == '-1' ){

$r = $CATEGORYS;

}else{

$r = $category_db->select(array('parentid' => $parentid),'*','','lisrotder desc');

}

}

//转换为json类型 $r = json_encode($r); //格式:{{..},{..},{..}}

$r = json_encode(array_reverse(array_reverse($r))); //两次倒置数组,转成json数组,否则会出现无法排序的情况,格式[{..},{..},{..}]

//jsonp请求的固定写法,可以解决跨域问题,引入callback回调函数

echo $_GET['jsoncallback'] .$r;

/*-------------读取结束-----------------------*/

}else{

echo "您的小程序不存在或者已关闭" ;

}

}

通过这个接口,微信小程序就能直接访问调用网站的所有栏目信息,也可以指定调用某个栏目或者子栏目的信息,小程序代码:

wx.request({

url: 'https://www.cnzhixiao.wang/api.php?op=get_category',

data: {

wxid:wxid//必填,用于验证小程序合法性

},

method: 'GET',

header: {

'content-type': 'application/json' // 默认值

},

success: function (res) {

const categorys = res.data;

try {

categorys.unshift(Date.now());//为了后期方便调用

wx.setStorageSync('categorys', categorys)

} catch (e) {

}

}

})

获取到栏目信息,最好是存储到缓存,这样可以方便以后随时调用!

f45b4297a564c397c57c57fda318ee7b

版权所有:转载请注明出处

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值