控制器主要负责请求的接收,并调用相关的模型处理,并最终通过视图输出。严格来说,控制器不应该过多的介入业务逻辑处理。
模型类通常完成实际的业务逻辑和数据封装,并返回和格式无关的数据。(模型类并不一定要访问数据库)
如果你需要调用PHP内置的类库,或者第三方没有使用命名空间的类库,记得在实例化类库的时候加上 \
// 错误的用法
$class = new stdClass();
$xml = new SimpleXmlElement($xmlstr);
// 正确的用法
$class = new \stdClass();
$xml = new \SimpleXmlElement($xmlstr);
全局空间:如果没有定义任何命名空间,所有的类与函数的定义都是在全局空间,在名称前加上前缀 \ 表示该名称是全局空间中的名称,即使该名称位于其它的命名空间中。
<?php
namespace A\B\C;
/* 这个函数是 A\B\C\fopen */
function fopen() {
/* ... */
$f = \fopen(...); // 调用全局的fopen函数
return $f;
}
?>