53 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			PHP
		
	
	
		
		
			
		
	
	
			53 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			PHP
		
	
	
| 
								 | 
							
								<?php
							 | 
						||
| 
								 | 
							
								namespace app\controller;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								use app\controller\BaseController;
							 | 
						||
| 
								 | 
							
								use app\model\System;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/**
							 | 
						||
| 
								 | 
							
								 * 控制器基础类
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								class Base extends BaseController
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    //需要向模板传递的值
							 | 
						||
| 
								 | 
							
								    protected $data = [];
							 | 
						||
| 
								 | 
							
								    //系统配置信息
							 | 
						||
| 
								 | 
							
								    protected $system = [];
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    // 初始化
							 | 
						||
| 
								 | 
							
								    protected function initialize()
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								        $this->middleware = ['csrf'];
							 | 
						||
| 
								 | 
							
								        $this->system = System::getSystem();
							 | 
						||
| 
								 | 
							
								        $this->data['system'] = $this->system;
							 | 
						||
| 
								 | 
							
								        $this->setCsrfToken();
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    //设置SEO信息
							 | 
						||
| 
								 | 
							
								    protected function setSeo($title, $keywords, $description)
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								        $this->data['seoTitle'] = $title;
							 | 
						||
| 
								 | 
							
								        $this->data['seoKeywords'] = $keywords;
							 | 
						||
| 
								 | 
							
								        $this->data['seoDescription'] = $description;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    
							 | 
						||
| 
								 | 
							
								    //设置默认SEO信息
							 | 
						||
| 
								 | 
							
								    protected function setDefaultSeo()
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								        $this->data['seoTitle'] = $this->system['seo_title'];
							 | 
						||
| 
								 | 
							
								        $this->data['seoKeywords'] = $this->system['seo_keywords'];
							 | 
						||
| 
								 | 
							
								        $this->data['seoDescription'] = $this->system['seo_description'];
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    
							 | 
						||
| 
								 | 
							
								    //模板
							 | 
						||
| 
								 | 
							
								    protected function view($template = '')
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								        return view($template)->assign($this->data);
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    protected function setCsrfToken()
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								        $this->data['_token'] = session('_token') ?? '';
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								}
							 |