Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
面向对象PHP的表单处理_Php_Forms_Oop - Fatal编程技术网

面向对象PHP的表单处理

面向对象PHP的表单处理,php,forms,oop,Php,Forms,Oop,我有一个关于面向对象编程的表单处理的问题 我现在的做法是: ->html表单(action=action.php?a=login) action.php文件: switch ( $_GET['a'] ) { case 'login': login stuff; break; } 但是我不喜欢这种方式(它看起来很难看,而且远不是OOP),我认为有更好的方式,我不知道怎么做 我想问一下,我怎样才能以一种好的方式做到这一点。顺便说一句,我使用MVC您要么自己设计一个使用OOP

我有一个关于面向对象编程的表单处理的问题

我现在的做法是:

->html表单(action=action.php?a=login)

action.php文件:

switch ( $_GET['a'] ) { 

 case 'login': 
    login stuff;
    break;
}
但是我不喜欢这种方式(它看起来很难看,而且远不是OOP),我认为有更好的方式,我不知道怎么做


我想问一下,我怎样才能以一种好的方式做到这一点。顺便说一句,我使用MVC

您要么自己设计一个使用OOP的MVC框架堆栈,要么使用许多框架中的一个。通常的方法是将动作映射到控制器方法

所以
/users/login
看起来像

class UsersController {
   function login() {
      //do your login stuff here
   }
}

作为第一步,您可以将操作移动到单独的文件中,并开始根据它们之间的关系对它们进行分组,而不是将所有方法都放在
操作中。php

您必须自己设计一个使用OOP的MVC框架堆栈,或者使用许多框架中的一个。通常的方法是将动作映射到控制器方法

所以
/users/login
看起来像

class UsersController {
   function login() {
      //do your login stuff here
   }
}

作为第一步,您可以将操作移动到单独的文件中,并开始根据它们的关联方式对它们进行分组,而不是将所有方法都放在
操作中。php

在进入OOP和/或过去的MVC流行语之前,您应该先将实用程序代码分组到函数中。我的用户类中有一个登录函数,我并不是将登录代码直接放在action.php文件中,该文件看起来像:case'login':$user->login($user,$pass);这应该是一个答案,但太短了,去看看codeigniter,这将是你前进的方向。在冒险进入OOP和/或过去的MVC流行语之前,你应该先将实用程序代码分组到函数中。我在我的用户类中有一个登录函数,我并不是将登录代码直接放在action.php文件中,该文件看起来像:case'login':$user->login($user,$pass);这真的应该是一个答案,但太短了,去看看codeigniter,这将是你前进的方向。