thinkphp5.1 配置使用

1,安装



//先切换成阿里云镜像,速度会快。
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
//composer config --unset repos.packagist  安装完后可以取消切换的镜像的命令
//安装tp5.1的版本
composer create-project topthink/think=5.1.* tp5 --prefer-dist

2,在文件夹application\index\controller 中的Index.php文件是首页控制器

3,数据库操作:

如果要在控制器中直接调用数据库,需要到config文件夹下找到database.php 文件,填写数据库信息,之后在控制器如下调用数据库

namespace app\index\controller;
use think\Db;

class Index
{
    public function index()
    {
        $Db = new Db;	
	$data=Db::query('select * from dz_lock where gid=?',[7]);
	print_r($data);
    }    
}

 4,使用模型

在application\index 文件夹下创建model文件夹,并新建文件Lock.php ,内容如下

namespace app\index\model;

use think\Model;

class Lock extends Model
{    
    protected $pk = 'id'; //主键    
        protected $table = 'dz_lock'; ///表名称    
     
}

 

创建完成后修改控制器文件为如下代码进行调用模型

namespace app\index\controller;
use app\index\model\Lock;

class Index
{
    public function index()
    {
        $lk=new Lock();		
     $user=$lk->where('id','>', 7)->find();  //只获取1条记录
	 //$user=$lk->where('id','>', 7)->select(); //获取所有符合条件的记录    
	 print_r($user);
    }    
} 

 5, 使用模板

如果使用视图来调用模板,需要继承Controller类,用如下方式进行调用

namespace app\index\controller;
use app\index\model\Lock;
use think\Controller;

class Index  extends Controller
{
    public function index()
    {
        $lk=new Lock();        
     $user=$lk->where('id','>', 7)->select(); 
        $this->assign("user",$data);
        return $this->fetch('index');
    }    
}    

并且需要在application\index\view\index 文件夹下创建index.html为模板 

模板内容如下

{volist name="user" id="vo"}
    <a href="">{$vo.lock_name}</a>
 {/volist}

  

6,如果修改了config下面template.php 的模板路径view_path参数,需要按路径进行模板创建并使用。

return [
    // 模板引擎类型 支持 php think 支持扩展
    'type'         => 'Think',
    // 默认模板渲染规则 1 解析为小写+下划线 2 全部转换小写 3 保持操作方法
    'auto_rule'    => 1,
    // 模板路径
    'view_path'    => '',
    // 模板后缀
    'view_suffix'  => 'html',
    // 模板文件名分隔符
    'view_depr'    => DIRECTORY_SEPARATOR,
    // 模板引擎普通标签开始标记
    'tpl_begin'    => '{',
    // 模板引擎普通标签结束标记
    'tpl_end'      => '}',
    // 标签库标签开始标记
    'taglib_begin' => '{',
    // 标签库标签结束标记
    'taglib_end'   => '}',
   'view_path'    => '../template/'
];

7,图片上传功能,在控制器Index.php增加方法

public function upload(){  
    $file = request()->file('image'); 
    if($file){
        $info = $file->move( 'D:\Visual-NMP-x64\www\wp\tp5\public\uploads');
        if($info){      
            echo $info->getSaveName(); 
        }else{            
            echo $file->getError();
        }
    }    
    return $this->fetch('upload');
    }

在模板文件中进行设置,注意标红部分。当前模板文件是\template\index\upload.html

<html lang="en">
<head>
  <meta charset="UTF-8">
  <title> </title>
</head>
<body>  

<form action="/tp5/public/index.php/index/Index/upload" enctype="multipart/form-data" method="post">
<input type="file" name="image" /> <br> 
<input type="submit" value="上传" /> 
</form> 

</body>
</html>

 

 

8,使用杂项, 如下操作,进入tp5的根目录,命令行下执行安装更新

composer require topthink/think-captcha 2.*
composer require topthink/think-image

正常安装后,在模板文件中可以直接调用验证码

<img src="{:captcha_src()}" alt="captcha" /></div>

在控制器中可以调用image类,这里的b.jpg在public目录中

namespace app\index\controller;
use app\index\model\Lock;
use think\Controller;
use think\Image;

class Index  extends Controller
{
    public function index()
    {
         $image = Image::open('b.jpg');        
        $width = $image->width(); 
        echo $width;


        $lk=new Lock();        
      $user=$lk->where('id','>', 7)->select(); 
        $this->assign("user",$data);
        return $this->fetch('index');
    }    
}                     

 

 

 

 

 

posted @ 2021-07-05 18:08  fsl  阅读(284)  评论(0编辑  收藏  举报