代码编写逻辑(先伪代码,再带方法的逻辑,最后实现具体方法)(先控制器,再模型)...

代码编写逻辑(先伪代码,再带方法的逻辑,最后实现具体方法)(先控制器,再模型)

一、总结

一句话总结:先伪代码,再带方法的逻辑,最后实现具体方法。先控制器,再模型。

 

1、如何实现书写代码逻辑?(这样会让编写代码超级简单)

a、先伪代码
45 //            if(数据库有此用户名){
46 //                if(用户信息正确){
47 // 进入系统 48 // }else{ 49 // 提示账户或密码错误 50 // } 51 // }else{ 52 // 注册用户 53 // 登录用户 54 // }
b、再带方法的逻辑
55             $modelLogin=new ModelLogin();
56             if(!$modelLogin->getUserInfo($dataIn)){ 57 //登录 58 $this->login($dataIn); 59 }else{ 60 //注册 61 $this->signUp($dataIn); 62  }
c、最后实现具体方法
69     //登录
70     public function login($dataIn) 71  { 72 $modelLogin=new ModelLogin(); 73 if ($modelLogin->isUserInfoCorrect($dataIn)){ 74 $this->success('登录系统成功!!!','index/index'); 75  } 76 else{ 77 $this->error("用户名或密码有误!!!"); 78  } 79  }

 

81     //注册
82     public function signUp($dataIn){ 83 $modelLogin=new ModelLogin(); 84 $result=$modelLogin->signUpUser($dataIn); 85 if ($result){ 86 $this->success('注册用户成功!!!','index/index'); 87 }else{ 88 $this->error("注册用户失败!!!"); 89  } 90  }

 

2、先伪代码,再带方法的逻辑,最后实现具体方法 这样规范化编写代码的好处是什么?

降低难度

节约时间

不容易错

快速修改

便于复用

代码清晰

逻辑清晰

便于修改

 

 

 

二、代码编写逻辑,legend的登录控制器中代码

 1 <?php
 2 namespace app\admin\controller;
 3 
 4 use app\admin\controller\Base;
 5 use app\admin\model\Base as ModelBase;
 6 use app\admin\model\Login as ModelLogin;
 7 
 8 class Login extends Base
 9 {
10     protected $beforeActionList = [
11         'assignSession',
12         // 'second' =>  ['except'=>'hello'],
13         // 'three'  =>  ['only'=>'hello,data'],
14     ];
15 
16     //前置操作,分配s_now_page到session,可以知道现在访问的是哪个界面
17     public function assignSession(){
18         session('index_now_page',60);
19     }
20 
21     //分配页面title,板块题目,面包屑导航等
22     public function assignPageData(){
23         $baseModel=new ModelBase();
24         $moduleId=session('index_now_page');
25         $modules=$baseModel->getAllParents($moduleId);
26         $this->assign('modules',$modules);
27         //把页面的父亲节点发过去
28     }
29 
30 
31     //主页
32     public function index()
33     {
34         session('index_now_page',60);
35         $this->assignPageData();
36         /*****************************************算法说明*****************************************/
37         /*
38          * 1、主逻辑板块,调用登录和注册方法
39          * 2、判断数据库里面有无此数据,有的话就登录进入系统,没有的话就注册登录进入
40          * */
41         /*****************************************改善板块*****************************************/
42         /*****************************************输出数据到数据库板块*****************************************/
43         if (request()->isPost()){
44             $dataIn=input('post.');
45 //            if(数据库有此用户名){
46 //                if(用户信息正确){
47 //                    进入系统
48 //                }else{
49 //                    提示账户或密码错误
50 //                }
51 //            }else{
52 //                注册用户
53 //                登录用户
54 //            }
55             $modelLogin=new ModelLogin();
56             if(!$modelLogin->getUserInfo($dataIn)){
57                 //登录
58                 $this->login($dataIn);
59             }else{
60                 //注册
61                 $this->signUp($dataIn);
62             }
63             //dump($dataIn);die;
64         }
65         /*****************************************输出数据到页面板块*****************************************/
66         return view();
67     }
68 
69     //登录
70     public function login($dataIn)
71     {
72         $modelLogin=new ModelLogin();
73         if ($modelLogin->isUserInfoCorrect($dataIn)){
74             $this->success('登录系统成功!!!','index/index');
75         }
76         else{
77             $this->error("用户名或密码有误!!!");
78         }
79     }
80 
81     //注册
82     public function signUp($dataIn){
83         $modelLogin=new ModelLogin();
84         $result=$modelLogin->signUpUser($dataIn);
85         if ($result){
86             $this->success('注册用户成功!!!','index/index');
87         }else{
88             $this->error("注册用户失败!!!");
89         }
90     }
91 }

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值