好像,没来更新这个了,今天来更新一下,最近事情有点多,太忙了,希望这个可以帮到一下,需要的朋友。
其他的会员,代理部分
第一篇 :https://blog.csdn.net/weixin_43726975/article/details/102995199
第二篇 :https://blog.csdn.net/weixin_43726975/article/details/103082633
第三篇 :https://blog.csdn.net/weixin_43726975/article/details/103230274
第四篇:https://blog.csdn.net/weixin_43726975/article/details/103289592
第五篇:https://blog.csdn.net/weixin_43726975/article/details/103325728
第六篇:https://blog.csdn.net/weixin_43726975/article/details/103436342
————————————————
获取当前登录的公司或者代理账户的id
function xjnum($id){
$map['parent_user']=$id;
$xjrs=M('user')->where($map)->count();
return $xjrs+0;
}
//整数保留两位小数
function sprintfs($su){
return sprintf('%.4f', $su);
}
//时间类
function timelx($id,$day=0,$oncs){
$cs=explode(',',$oncs);
$id=$id-$cs[2];
if($id<=0){
$id=$id+$cs[3];
$day=$day-1;
}
if($cs[1]){
$ws=1;
for($i=0;$i<$cs[1]-1;$i++){
$ws=$ws*10;
if($id<$ws){
$id='0'.$id;
}
}
}
$no=date($cs[0],time()+$day*24*3600).$id;
return $no;
}
获取用户头像相对网站根目录的地址
function sp_get_user_avatar_url($avatar){
if($avatar){
if(strpos($avatar, "http")===0){
return $avatar;
}else {
if(strpos($avatar, 'avatar/')===false){
$avatar='avatar/'.$avatar;
}
$url = sp_get_asset_upload_path($avatar,false);
if(C('FILE_UPLOAD_TYPE')=='Qiniu'){
$storage_setting=sp_get_cmf_settings('storage');
$qiniu_setting=$storage_setting['Qiniu']['setting'];
$filepath=$qiniu_setting['protocol'].'://'.$storage_setting['Qiniu']['domain']."/".$avatar;
if($qiniu_setting['enable_picture_protect']){
$url = $url.$qiniu_setting['style_separator'].$qiniu_setting['styles']['avatar'];
}
}
return $url;
}
}else{
return $avatar;
}
}
程序的密码加密方法
function sp_password($pw,$authcode=''){
if(empty($authcode)){
$authcode=C("AUTHCODE");
}
$result="###".md5(md5($authcode.$pw));
return $result;
}
/**
* CMF密码加密方法 (X2.0.0以前的方法)
* @param string $pw 要加密的字符串
* @return string
*/
function sp_password_old($pw){
$decor=md5(C('DB_PREFIX'));
$mi=md5($pw);
return substr($decor,0,12).$mi.substr($decor,-4,4);
}
/**
* CMF密码比较方法,所有涉及密码比较的地方都用这个方法
* @param string $password 要比较的密码
* @param string $password_in_db 数据库保存的已经加密过的密码
* @return boolean 密码相同,返回true
*/
function sp_compare_password($password,$password_in_db){
if(strpos($password_in_db, "###")===0){
return sp_password($password)==$password_in_db;
}else{
return sp_password_old($password)==$password_in_db;
}
}
function sp_log($content,$file="log.txt"){
file_put_contents($file, $content,FILE_APPEND);
}

清空系统缓存,兼容sae
function sp_clear_cache(){
import ( "ORG.Util.Dir" );
$dirs = array ();
// runtime/
$rootdirs = sp_scan_dir( RUNTIME_PATH."*" );
//$noneed_clear=array(".","..","Data");
$noneed_clear=array(".","..");
$rootdirs=array_diff($rootdirs, $noneed_clear);
foreach ( $rootdirs as $dir ) {
if ($dir != "." && $dir != "..") {
$dir = RUNTIME_PATH . $dir;
if (is_dir ( $dir )) {
//array_push ( $dirs, $dir );
$tmprootdirs = sp_scan_dir ( $dir."/*" );
foreach ( $tmprootdirs as $tdir ) {
if ($tdir != "." && $tdir != "..") {
$tdir = $dir . '/' . $tdir;
if (is_dir ( $tdir )) {
array_push ( $dirs, $tdir );
}else{
@unlink($tdir);
}
}
}
}else{
@unlink($dir);
}
}
}
$dirtool=new \Dir("");
foreach ( $dirs as $dir ) {
$dirtool->delDir ( $dir );
}
if(sp_is_sae()){
$global_mc=@memcache_init();
if($global_mc){
$global_mc->flush();
}
$no_need_delete=array("THINKCMF_DYNAMIC_CONFIG");
$kv = new SaeKV();
// 初始化KVClient对象
$ret = $kv->init();
// 循环获取所有key-values
$ret = $kv->pkrget('', 100);
while (true) {
foreach($ret as $key =>$value){
if(!in_array($key, $no_need_delete)){
$kv->delete($key);
}
}
end($ret);
$start_key = key($ret);
$i = count($ret);
if ($i < 100) break;
$ret = $kv->pkrget('', 100, $start_key);
}
}
}
生成参数列表,以数组形式返回
function sp_param_lable($tag = ''){
$param = array();
$array = explode(';',$tag);
foreach ($array as $v){
$v=trim($v);
if(!empty($v)){
list($key,$val) = explode(':',$v);
$param[trim($key)] = trim($val);
}
}
return $param;
}
获取后台管理设置的网站信息,此类信息一般用于前台,推荐使用sp_get_site_options
function get_site_options(){
$site_options = F("site_options");
if(empty($site_options)){
$options_obj = M("Options");
$option = $options_obj->where("option_name='site_options'")->find();
if($option){
$site_options = json_decode($option['option_value'],true);
}else{
$site_options = array();
}
F("site_options", $site_options);
}
$site_options['site_tongji']=htmlspecialchars_decode($site_options['site_tongji']);
return $site_options;
}
申明,本代码相关程序,只作为学习和研究使用,不得用于任何商业或者其他使用!
来源:CSDN
作者:weixin_43726975
链接:https://blog.csdn.net/weixin_43726975/article/details/103683003