核心 common.php 二次开发常用函数介绍(第一期常用的22个函数)
作者:Suifeng写日志因为某些原因 现在x1用不了TP的日志功能,但是官方也提供了一个写日志功能。那就是 logs(); 比如logs($aa);会在根目录生成一个log.txt 共有三个参数 基本不用改 直接这样写就ok2自定义通用状态助手 get_status 这个是我最喜欢的功能。例如: {:get_status($rs['pay_status'],)}利用好了事半功倍。3取得汉字的拼音get_pinyin('你好'); 全拼get_pinyin('你好','first'); 首字母get_pinyin('你好','one'); 第一个字的首字母4强制微信登录weixin_login(); 一般需要登录的地方都希望手机版能微信强制登录免去后续的操作步骤 这个就有用了。用法:if(empty($this->user)&&in_weixin()&&config('webdb.weixin_type')==3){weixin_login();}微信端访问的话如果没有登录就可以强制登录。5获取网址二维码get_qrcode(网址) 这个一般配合 get_url('location') 获取当前网址使用。例如:get_qrcode(get_url('location'))6获取其他模块中模型的操作方法get_model_class($dirname,$type);例如任意位置获取购物车数据:get_model_class('mall','car')->getlist(0,$this->user['uid']); 也就是 第一个参数是目录名 第二个是模型的类名 后面就是类中的调用方法我个人比较习惯用 \app\mall\model\Car::getlist(0,$this->user['uid']);这样的方式7清除HTM代码del_html($aa);8获取频道的模型配置参数model_config 共有2个参数 第一个参数是模型id 一个是频道目录名例如:model_config(1,'cms'); 获取cms模块下模型为1的配置9获取模块的配置信息M 2个参数 第一个参数为指定查找的范围可以是模块id和目录名 第二个是目录名可以忽略
例如:M('cms'); 输入目录名的方式第二项可以忽略 你也可以改为M(1); 10获取各种网址get_url共有2个参数 第一个参数是获取的地址类型 第二个参数为数组例如:get_url('member') 这个用的最多了 有N个用法 直接搜索核心文件查看这里就不复制黏贴了11给管理员发系统提醒通知send_admin_msg例如:send_admin_msg("标题","内容"); 这样就全部给管理员组的管理员发送站内信和微信消息12检测关注了公众号没有wx_check_attention例如:
if(empty(wx_check_attention($this->user['weixin_api'])!==true ){ $imgshow = '<img style="max-width:50%;" src="'.tempdir($this->webdb['mp_code_img']).'">'; $this->error("请先关注公众号才可以提现,关注公众号方便接收提现申请动态!<br>$imgshow"); }13访问远程数据这个比较简单 http_curl($url); 即可 用的比较多14取得文件的显示路径tempdir用过V7的都知道这个,就是格式化路径的 用法都知道就不叙述了{$rs.picurl|tempdir}tempdir($rs.picurl);15截取多少个字符get_word 用过V7的更知道了 用法一致 {$rs.title|get_word=100}16数据库操作方法,可以执行原生数据库语句query($sql,$array=[],$cache_time=0)这个用的也比较多。二次开发中比较实用。用法直接搜索核心类就可以看明白。
17获取插件配置参数plugins_configplugins_config(); 获取所有插件的配置plugins_config(1); 获取id为1的插件配置plugins_config('weixin'); 获取安装目录为weixin的配置你也可以根据这个特性判断插件是否安装例如:{if plugins_config('weixin')} 安装了后的代码{/if}18获取系统安装的频道模块信息modules_config获取系统的模块配置。用法和插件的用法一模一样 没有任何区别 19判断数据表是否存在 is_table()简单的说就是判断这个表存在不存在例如: is_table('cms_category')20判断表内字段存在不存在table_field例如:
if (!table_field('cms_category','aabb')) { 判断 qb_cms_category 表中存在 aabb 字段没有 如果没有这里就可以执行操作 }21把数据库取出的对象数据转成数组getArray用法:getArray($array)注意这里是从数据库读取的对象转数组 可不是全部对象都可以转数组的22获取数据get_post例如:get_post();全部get_post('get'); get数据 get_post(post); post数据 get_post(route); route 数据和input差不多的用法 只是这里更高级一点点
受限于篇幅的长度,不会进行大量的示例验证 只会简单给出一个简单示例 具体到某一个函数都是有多种用法的 只能靠自己的积累和试验了。并不是这里给出的这几种用法 切记灵活运用事半功倍。
码字所限有的地方中英文切换不及时或者干脆没有符号 请注意别直接复制使用。第一期就先这样了 有时间更新第二期。
Pages:
[1]