为了账号安全,请及时绑定邮箱和手机立即绑定

thinkphp3.2中service与logic层到底该如何使用,下面是我自己写的实例,但感觉怪怪的希望大虾们提下意见

thinkphp3.2中service与logic层到底该如何使用,下面是我自己写的实例,但感觉怪怪的希望大虾们提下意见

PHP
微笑de迪妮莎 2016-06-07 18:33:37
/*  * author:Jiang  * 快速添加用户-后台-控制器  * UserInfoController.class.php中     * 2016-06-07  */ public function addUserInfoQuick(){     if(IS_POST){         $url = '/index.php?m=Admin&c=UserInfo&a=userInfoManage';         //控制器主要完成取数据,调用biz方法,转发到下一个页面。单元测试的话,可以使用service接口         $d_userInfo = array();         $d_userInfo['username'] = I('param.username','','trim,strip_tags');//姓名         $d_userInfo['pwd'] = I('param.pwd','','trim,strip_tags');         $d_userInfo['re_pwd'] = I('param.re_pwd','','trim,strip_tags');         $d_userInfo['email'] = I('param.email','','trim,strip_tags');//邮箱         $m_userInfo_service = D('Home/UserInfo','Service');         $result = $m_userInfo_service->addUserInfoQuickService($d_userInfo);//调用BLL         if($result){             json_error_tip(0,'快速添加会员成功',$url);         }else{             json_error_tip(1,'快速添加会员失败',$url);         }     }else{         $m_config = D('Home/Config');         $link_expire_list = $m_config->getLinkExpires();//链接是否有效配置         $is_actived_list = $m_config->getActiveds();//账号是否激活配置         $status_list = $m_config->getStatus();//账号状态配置         //数据         $data = array();         //配置         $config_arr = array();         $config_arr['link_expire_list'] = $link_expire_list;         $config_arr['is_actived_list'] = $is_actived_list;         $config_arr['status_list'] = $status_list;         $data['config_list'] = $config_arr;         //绑定         $this->assign('data',$data);         $this->display('user_info_add');     } } /**  * 添加用户-服务层  * @author Jiang  * @access public  * @param array $options 表单数据(账号,密码,确认密码,验证码)  * @return mixed  * UserInfoService.class.php中  * @date 2016-06-07  */ public function addUserInfoService($options=array()){     //必填过滤     if($options['username'] == ''){         json_error_tip(1,'请填写用户名');     }     if($options['pwd'] == ''){         json_error_tip(1,'请填写密码');     }     if($options['re_pwd'] == ''){         json_error_tip(1,'请填写确认密码');     }     if($options['vcode'] == ''){         json_error_tip(1,'请填写验证码');     }     //格式验证过滤     if(check_accout($options['username']) === false){         json_error_tip(1,'用户名格式不正确');     }     if(check_pwd($options['pwd']) === false){         json_error_tip(1,'密码格式不正确');     }     if(check_pwd($options['repwd']) === false){         json_error_tip(1,'确认密码格式不正确');     }     if($options['pwd'] != $options['repwd']){         json_error_tip(1,'密码与确认密码不一致');     }     if(check_vcode($options['vcode'],'vcode') === false){         json_error_tip(1,'验证码不正确');     }     $m_user_info_logic = D('Home/UserInfo','Logic');     $data = array();     $data['username'] = $options['username'];     $data['pwd'] = $options['pwd'];     return $m_user_info_logic->addUserInfoLogic($data); } /**  * 快捷添加用户-逻辑层-后台使用  * @author Jiang  * @access public  * @param array $options 表单数据  * @return mixed  * UserInfoLogic.class.php中  * @date 2016-05-26  */ public function addUserInfoLogic($options=array()){    //集中处理核心业务逻辑,并返回结果    //业务逻辑,1用户名不能重复    $m_user_info = D('Home/UserInfo');    $user_info_obj = $m_user_info->getUserInfoByUserName($options['username']);    if(!empty($user_info_obj)){       json_error_tip(1,'该账号已经被使用');    }    $options['user_id'] = get_unique_str($options['username'],'user_');//唯一标识记录    $m_userInfo = D('Home/UserInfo');    return $m_userInfo->addUserInfo($options);//调用模型添加方法,将数组作为对象传递给模型层 } /**  * 添加用户-模型层  * @param array $input 数据  * UserInfoModel.class.php中  * @return bool|mixed  */ public function addUserInfo($input=array()){    if($this->create($input)){       $result = $this->add();       return $result;    }else{       return false;    } }
查看完整描述

1 回答

?
大写的王

TA贡献122条经验 获得超162个赞

tp  MVC没有什么严格的区分,甚至全在控制器中实现mc的操作都没什么影响。

查看完整回答
反对 回复 2016-09-18
  • 微笑de迪妮莎
    微笑de迪妮莎
    虽然可以这么干,但无法重用模型的基础方法后,会造成维护困难与团队合作的问题。代码写的规范与明确的注释,有利于维护。你那样全在控制器里面干,你让别人怎么搞,重新写模型的基础方法吗?
  • qq_三分钟热度_5
    qq_三分钟热度_5
    不利于维护的代码 等于无用代码
  • 1 回答
  • 0 关注
  • 7417 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信