首先是composer.json
{ "require": { smarty/smarty": ^3.1 },// 自动加载 可以在composer.json的autoload字段找那个添加自己的autoloader autoloadpsr-4: { App\\Controllers\\Controllers/,App\\Models\\Models/Tools\\Tools/ } } }
Models/Users.PHP
<?PHP model层数据库操作演示 namespace App\Models; class Users { 数据存入数据库演示 public function store() { echo 'store into database'; } 查询数据库演示 getUsername() { 查询数据库 return 'test-data'; } }
Controllers/UserController.PHP
<?PHP namespace App\Controllers; use App\Models\Users; Smarty; class UserController extends Smarty { create() { echo 'User create' getUser() { 通过Model查询数据 $userModel = new Users; $username = $userModel->getUsername(); echo 'username:'.$username;exit; $this->setTemplateDir(dirname(__DIR__) . '/Views/'); $this->setCompileDir(dirname(__DIR__) . '/runtime/Compile/'); 将$username显示在对应的一个HTML文件当中,并且显示出来 // 表现层 user/user.html // 将变量发送给模板(html文件) $this->assign('username',$username$this->assign('age',20); 显示模板 $this->display('user/user.html'); } }
Views/user/user.html
<!DOCTYPE html> <html lang="en"head> Meta charset="UTF-8"title>Title</bodyh2> {$username} h3 {$age} html>
在本机浏览器中访问