Pet*_*son 13 php model-view-controller
我做了很多ASP.NET MVC 2开发,但我正在处理一个小项目,它需要在PHP中完成.
有没有内置的PHP来进行模型绑定,将表单字段映射到类?我的一些PHP代码目前看起来像这样:
class EntryForm
{
public $FirstName = "";
public $LastName = "";
}
$EntryForm = new EntryForm();
if ($_POST && $_POST["Submit"] == "Submit")
{
$EntryForm->FirstName = trim($_POST["FirstName"]);
$EntryForm->LastName = trim($_POST["LastName"]);
}
Run Code Online (Sandbox Code Playgroud)
是否存在内置于典型PHP安装的内容,可以像在ASP.NET MVC中找到的那样进行映射,还是需要额外的框架?
Mah*_*lid 10
不是原生的,而是一个更好的解决方案,允许您使用自己的类或标准类...
function populateWithPost ($obj = NULL)
{
if(is_object($obj)) {
} else {
$obj = new StdClass ();
}
foreach ($_POST as $var => $value) {
$obj->$var = trim($value); //here you can add a filter, like htmlentities ...
}
return $obj;
}
Run Code Online (Sandbox Code Playgroud)
然后你可以使用它:
class EntryForm
{
public $FirstName = "";
public $LastName = "";
}
$entry = populateWithPost(new EntryForm());
Run Code Online (Sandbox Code Playgroud)
要么
$obj = populateWithPost();
Run Code Online (Sandbox Code Playgroud)