找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 8720|回复: 1

[内置扩展] 新秀网络验证内部常用函数

[复制链接]
发表于 2021-5-26 22:44:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区

您需要 登录 才可以下载或查看,没有账号?立即注册

×
新秀网络验证内部常用函数

1、此页面函数可用于内置扩展、接口开发、插件开发方法中调取;

2、此页面函数均为验证框架内部使用函数,经过自定义封装;

3、用于二次开发时,请大家认真阅读使用说明,调试完成后,再用于正式环境。


xx_client::核心类函数
[PHP] 纯文本查看 复制代码
        /**
         * 获取接口api插件标识符
         * @return mixed
         */
        xx_client::get_plugin_ver();

        /*生成唯一标志
        *标准的UUID格式为:xxxxxxxx-xxxx-xxxx-xxxxxx-xxxxxxxxxx(8-4-4-4-12)
        */
        xx_client::sgin_uuid($str);

        /**
         * 获取当前登录uid信息
         * @param null $do // 默认0返回uid、1获取用户名、2获取用户组id、3获取管理组id
         * @return mixed
         */
        xx_client::uid_by_token($do = null);

        /**
         * HOOK反射钩子
         * @param $name  //扩展方法名
         * @param array $arr  // 传入钩子数据 数组型
         * @return bool|mixed // 返回数据
         * 实例:xx_client::class_hook('hook_'.$this->action,array($uid,$_GET));
         */
        xx_client::class_hook($name,$arr=array());

        /**
         * 网络验证内置结束退出方法,接口访问完成后退出保存日志
         * @param $code //状态码 200 成功  400 失败
         * @param string $result //错误提示码 OK代表成功 失败填写提示语
         * @param string $data //成功后返回数组数据,json、xml两种形式
         */
        xx_client::json_output($code,$result='',$data='');

        /**
         * 接收GET、POST传入参数,并转义,适用于字符串
         * @param $params //参数名 & 开头的参数
         * @param bool $iscore //如果填:true 则GET、POST参数中必须包含此参数,即接口文档所说必填参数,如果缺失将报错;
         * @return bool|mixed|string //返回传入对应参数值
         */
        xx_client::safe_check($params, $iscore = false);

        /**
         * 接收GET、POST传入参数,并转义,适用数字
         * @param $params //参数名 & 开头的参数
         * @param bool $iscore //如果填:true 则GET、POST参数中必须包含此参数,即接口文档所说必填参数,如果缺失将报错;
         * @return bool|mixed|string //返回传入对应参数值
         */
        xx_client::safe_check_uid($params, $iscore = false);


        /**
         * 接口退出时自定义返回字段
         * @param $fields // 自定义返回字段数组
         * @param $output // 接口退出时返回的数据
         * @return mixed|string
         * 例子:xx_client::hook_exit_fields(array('uid','username'),$output);
         */
       xx_client::hook_exit_fields(array('uid','username'),$output);

        //获取客户端真实IP
        xx_client::get_client_ip();

xx_output::返回类函数
[PHP] 纯文本查看 复制代码
        /**
         * 网络验证内置结束退出方法,接口访问完成后退出保存日志
         * @param $code //状态码 200 成功  400 失败
         * @param string $result //错误提示码 OK代表成功 失败填写提示语
         * @param string $data //成功后返回数组数据,json、xml两种形式
         */
        xx_output::json_output($code,$result='',$data='');

xx_cache::缓存类函数
[PHP] 纯文本查看 复制代码
        /**
         * 获取data文件列表内缓存文件列表
         * @param $pathfile //缓存目录名称 例子:'mulu/mulu1' /斜杠两侧都是文件名
         * @return array|false //返回对应文件下所有缓存变量名
         */
        xx_cache::cache_list($pathfile);

        /**
         * 获取指定缓存变量值
         * @param $pathfile //缓存目录及文件名称 例子:'mulu/mulu1/wenjian' /斜杠前面都是目录,最后面是文件名
         * @param array $keys //获取缓存值数组,支持N级读取,array('key','key1',...) ,
         * 如果为空,返回全部数组或文本
         * @param bool $crypt // 是否是加密数据,默认为假
         * @return mixed
         */
        xx_cache::get_cache($pathfile,$keys = array(),$crypt=false);

        /**
         * 设置指定缓存变量值
         * @param $pathfile //缓存目录及文件名称 例子:'mulu/mulu1/wenjian' /斜杠前面都是目录,最后面是文件名
         * @param array $keys //设置缓存值数组,支持N级设置,array('key'=>array('keys',''keys1'),'key1'=>'demo',...) ,
         * 如果不是数组设置为指定文本
         * @param bool $crypt // 是否是加密数据,默认为假
         * @return mixed
         */
        xx_cache::set_cache($pathfile,$keys = array(),$crypt=false);
  
        /**
         * 合并数组缓存文件
         * @param $pathfile //缓存目录及文件名称 例子:'mulu/mulu1/wenjian' /斜杠前面都是目录,最后面是文件名
         * @param array $keys //新增缓存文件,数组型,如果两个或更多个数组元素有相同的键名,则最后的元素会覆盖其他元素。
         * 如果是文本加入数组,或者数组加入文本,文本加入文本都不会覆盖
         * @param bool $crypt // 是否是加密数据,默认为假
         * @return mixed
         */

        xx_cache::add_cache($pathfile,$keys = array(),$crypt=false);

        /**
         * 出栈数组最后一个元素
         * @param $pathfile//缓存目录及文件名称 例子:'mulu/mulu1/wenjian' /斜杠前面都是目录,最后面是文件名
         * @param bool $crypt // 是否是加密数据,默认为假
         * @return false|mixed|null
         */
        xx_cache::pop_cache($pathfile,$crypt=false);

        /**
         * 查询所有一维数组键名与键值对应键名
         * @param $pathfile //缓存目录及文件名称 例子:'mulu/mulu1/wenjian' /斜杠前面都是目录,最后面是文件名
         * @param null $type //输入键值反查对应的键名,如果为空,则返回所有键名
         * @param bool $crypt // 是否是加密数据,默认为假
         * @return int[]|string[]
         */
        xx_cache::keys_cache($pathfile,$type = null,$crypt=false);

        /**
         *返回随机键名,即抽奖程序
         * @param $pathfile //缓存目录及文件名称 例子:'mulu/mulu1/wenjian' /斜杠前面都是目录,最后面是文件名
         * @param 1 $int //输入返回随机键值的数量,默认为1
         * @param bool $crypt // 是否是加密数据,默认为假
         * @return int[]|string[]
         */
        xx_cache::rand_cache($pathfile,$int = 1,$crypt=false);

        /**
         * 输入对应值,搜索对应键名
         * @param $pathfile  //缓存目录及文件名称 例子:'mulu/mulu1/wenjian' /斜杠前面都是目录,最后面是文件名
         * @param $type  //输入键值反查对应的键名,不能为空,则返回所有键名
         * @param false $strict //默认为假,如果设置为 true,则在数组中检查给定值的类型,数字 5 和字符串 5 是不同的
         * @param bool $crypt // 是否是加密数据,默认为假
         * @return false|int|string
         */
        xx_cache::search_cache($pathfile,$type,$strict = false,$crypt=false);

        /**
         * 删除指定变量值及变量缓存文件
         * @param $pathfile //缓存目录及文件名称 例子:'mulu/mulu1/wenjian' /斜杠前面都是目录,最后面是文件名
         * @param null $keys //缓存数组keys目前只支持五级数组
         * @param bool $crypt // 是否是加密数据,默认为假
         * @return bool|int|void
         */
        xx_cache::del_cache($pathfile,$keys = array(),$crypt=false);

xx_mysql::数据库类函数
[PHP] 纯文本查看 复制代码
         /**
         * 设置临时数据库配置文件
         * @param $host //服务器地址
         * @param $user //数据库用户名
         * @param $name //数据库名
         * @param $pw //数据库密码
         * @return array //返回原数据库配置文件,配合退出数据库方法适用
         */

        xx_mysql::set_db_config($host,$user,$name,$pw);

        /**
         * 返回数据库
         * @param array $arr //提交切换数据库返回配置文件
         * @return mixed
         */

        xx_mysql::exit_db($arr= array());

        /**
         * 模糊搜索数据库返回数据
         * @param $table  //搜索表名称
         * @param $rule //搜索规则 接口规则“或”和“且”用“|”分开,多关键字用“-”分开
         * 例:标-的|标-题(包含标或的,且必须包含标和题)
         * 例:标题 (搜索包含标题的帖子)
         * 例:标题-发现(搜索包含标题或发现的帖子)
         * @param $ruletab //搜索字段
         * @param string $field //返回字段array
         * @param string $order //排序字段
         * @param string $start //开始数据
         * @param string $limit //结束数据
         * @param string $sort //排序规则
         * @return array
         */

        xx_mysql::fetch_all_search ($table,$rule,$ruletab,$field = "id",$order = "id",$start = "",$limit = "",$sort = '');

        /**
         * 搜索返回数据内容
         * @param $table  //搜索表名称
         * @param $ruletab //搜索字段规则 例如 id=1
         * @param string $field //返回字段array
         * @param string $order //排序字段
         * @param string $start //开始数据
         * @param string $limit //结束数据
         * @param string $sort //排序规则
         * @return array
         * 实例如下:
         * return xx_mysql::fetch_all("common_usergroup_field","1=1",array("groupid","readaccess","allowpost"),"groupid");
         */

        xx_mysql::fetch_all ($table,$ruletab,$field,$order = "id",$start = "",$limit = "",$sort = '');

        /**
         * 搜索返回数据整条内容
         * @param $table  //搜索表名称
         * @param $ruletab //搜索字段规则 例如 id=1
         * @param string $field //返回字段array
         * @return array
         * 实例如下:
         * return xx_mysql::fetch_first('common_credit_log','uid=3',array());
         */

        xx_mysql::fetch_first ($table,$ruletab,$field =false);

        /* 数据表更新操作
         * 方法名:DB::update()
         * 插入的值如果是变量用array(),DB::update('borle_do',array('countMoney' => $countMoney),array('doId'=> $doId),true);}
         * $table:(更新数据的表)
         * $data:更新的数据,字段对应的
         * $condition:更新的条件,必须包含主键id
         * $unbuffrerd:是否使用无缓存查询
         * $low_priority:是否采用无损更新表
         */

        xx_mysql::update_all($table,$data,$condition);

        /*
         * 数据表删除操作
            方法名:DB::delete()
            参数解释:
            $table:删除数据的表
            $condition:删除条件 支持uid=1文本,也支持数组,数组传入时都是并为真执行
            $limit:删除满足条件的目数
            $unbuffered:是否使用无缓存查询
         */

        xx_mysql::delete($table,$condition,$limit=1);

        /*
         * 数据库插入数据
         * $table:插入数据的表 $data:插入的数据,字段对应值
         * $dataarray 插入数据数组
         * $return_insert_id:是否返回插入数据的ID
         * $replace:是否使用replace into  如果为真: 当存在数据执行修改,不存在执行写入,返回uid,
         * 注意数组重必须包含主键uid array('uid' => '1','dname' => 'ppc', )
         * $slient:操作失败是否不提示
        */

        xx_mysql::insert($table,$dataarray='',$replace = false);


xx_curl::访问类函数
[PHP] 纯文本查看 复制代码
        /**
         * get访问url网址接口
         * @param $url //地址
         * @return bool|string
         */
        xx_curl::get_url($url);
       
        /**
         * post访问url地址,并提交数据
         * @param $url //地址
         * @param $post_data //数组型
         * @return bool|string
         */
        xx_curl::post_url($url, $post_data);

        /**
         * post访问url地址,并提交json数据
         * @param $url
         * @param $data_string //json
         * @return false|string
         */
        xx_curl::post_url_json($url, $post_json) ;

        /**
         * 自动跳转页面登录状态
         * @param $uid // 设置用户uid
         * @param $url //打开指定网址
         * @param $jump //是否跳转
         */
        xx_curl::send_url($uid,$url,$jump);

        /**
         * JS提示跳转
         * @param  $tip  弹窗口提示信息(为空没有提示)
         * @param  $type 设置类型 close = 关闭 ,back=返回 ,refresh=提示重载,jump提示并跳转url
         * @param  $url  跳转url
         */
        xx_curl::alert($tip, $type, $url) ;



xx_cookie::cookie类函数
[PHP] 纯文本查看 复制代码
        /**
         * 设置cookie
         * @param $var - 变量名
         * @param $value - 变量值
         * @param $life - 生命期
         */
        xx_cookie::set_cookie($var, $value = '', $life = 0);

        /**
         * 获取cookie
         * @param $key - cookie名称,不需要带前缀
         */
        xx_cookie::get_cookie($key);

        /**
         * 删除cookie
         * @param $var - 变量名
         */
        xx_cookie::del_cookie($var);

        /**
         * 删除所有cookie
         */
        xx_cookie::del_cookie_all();

xx_dz_members::用户类函数
[PHP] 纯文本查看 复制代码
        
        /**
         * 检测积分下限是否够积分扣除
         * @param $action // array(2=>100) 其中2为extcredits积分编号,100为需要扣除的积分数量
         * @param $uid //用户uid
         * @return bool //如果积分大于或等于所要扣除积分,则返回真,如果不够扣除则返回假
         */
        xx_dz_members::check_credits_limit($action,$uid);

        /**
         * 通过uid获取uc用户数据
         * @param $uid //用户uid
         * @param $ziduan //获取用户字段
          uid        mediumint(8) unsigned                NO        是        用户ID
        username        char(15)                NO                用户名
        password        char(32)                NO                密码
        email        char(32)                NO                用户Email
        myid        char(30)                NO                漫游id
        myidkey        char(16)                NO                漫游id
        regip        char(15)                NO                注册IP
        regdate        int(10) unsigned        0        NO                注册时间
        lastloginip        int(10)        0        NO                上次登陆的IP(程序转换成数值类型)
        lastlogintime        int(10) unsigned        0        NO                上次登录的时间
        salt        char(6)                NO                密码干扰串,用来和密码进行配合验证,防止被暴力破解
        secques        char(8)                NO                用户的安全提问
         */
        xx_dz_members::uc_by_uid($uid,$ziduan);
    
    
        /**
         * 返回用户登录名(uid、username、email、sgin、qq、weixin、phone)
         * @param $name //输入uid、username、email、sgin、qq、weixin、phone
         * @param string $type //定义输出内容 uid、username、email、sgin、qq、weixin、phone 为空返回全部
         * @param string $output //定义查询为空时,是否直接退出程序,默认假
         * @return array|false|mixed //失败返回假
         */
        
        xx_dz_members::get_by_uid($name,$type='',$output = false);
        
        
        /**
         * 返回启用积分信息
         * @param $int //积分类型id 1-8
         * @param string $type //返回类型字段 默认返回title
         * @return mixed
         */
        xx_dz_members::extcredits($int,$type);

        /**
         * 通过用户组id,返回用户组信息表
         * @param $int //用户组id
         * @param null $type // 如果是空返回对应用户组id所有字段,如果填写字段则返回对应字段信息
         * @return mixed
         */
        xx_dz_members::usergroup($int,$type);
    
    
        /**
         * 通过uid获取用户会员组groupid
         * @param $uid
         * @return mixed 返回用户组id
         */
        xx_dz_members::usergroup_by_uid($uid);
    
        /**
         * 通过uid获取用户管理组adminid
         * @param $uid
         * @return mixed 返回管理组id
         */
        xx_dz_members::adminid_by_uid($uid);

xx_email::邮件类函数

[PHP] 纯文本查看 复制代码
        /**
         *发送指定邮件,通用版
         * @param $toemail // 对方邮箱地址
         * @param $subject // 邮件标题
         * @param $message // 邮件内容
         * @param $array // 邮件内容,关键字替换:array('要改变的字符'=>'要改变为的字符')
         * @param $sitename //邮件标题,前面[站点名称]
         * @return bool
         */
        
         xx_email::send_email($toemail, $subject,$message,$array,$sitename='');
    
        /**
         * Discuz内置,论坛注册地址发送邀请
         * @param $toemail // 对方邮箱地址 
         * @param string $sitename //邮件标题,前面[站点名称]
         * @return bool//返回真或假
         */
        xx_email::email_dz_register($toemail,$sitename='');

        /**
         * Discuz内置,取回密码邮件发送
         * @param $toemail // 对方邮箱地址
         * @param string $sitename //邮件标题,前面[站点名称]
         * @return bool //返回真或假
         */
        
        xx_email::email_dz_passwd($toemail,$sitename='');


发表于 2021-7-23 17:11:06 | 显示全部楼层
111111111111111111
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|新秀网络验证系统API[软著登字第13061951号] ( 豫ICP备2021033257号-1 )

GMT+8, 2024-12-10 22:21 , Processed in 0.214038 second(s), 40 queries , Redis On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表