好得很程序员自学网
  • 首页
  • 后端语言
    • C#
    • PHP
    • Python
    • java
    • Golang
    • ASP.NET
  • 前端开发
    • Angular
    • react框架
    • LayUi开发
    • javascript
    • HTML与HTML5
    • CSS与CSS3
    • jQuery
    • Bootstrap
    • NodeJS
    • Vue与小程序技术
    • Photoshop
  • 数据库技术
    • MSSQL
    • MYSQL
    • Redis
    • MongoDB
    • Oracle
    • PostgreSQL
    • Sqlite
    • 数据库基础
    • 数据库排错
  • CMS系统
    • HDHCMS
    • WordPress
    • Dedecms
    • PhpCms
    • 帝国CMS
    • ThinkPHP
    • Discuz
    • ZBlog
    • ECSHOP
  • 高手进阶
    • Android技术
    • 正则表达式
    • 数据结构与算法
  • 系统运维
    • Windows
    • apache
    • 服务器排错
    • 网站安全
    • nginx
    • linux系统
    • MacOS
  • 学习教程
    • 前端脚本教程
    • HTML与CSS 教程
    • 脚本语言教程
    • 数据库教程
    • 应用系统教程
  • 新技术
  • 编程导航
    • 区块链
    • IT资讯
    • 设计灵感
    • 建站资源
    • 开发团队
    • 程序社区
    • 图标图库
    • 图形动效
    • IDE环境
    • 在线工具
    • 调试测试
    • Node开发
    • 游戏框架
    • CSS库
    • Jquery插件
    • Js插件
    • Web框架
    • 移动端框架
    • 模块管理
    • 开发社区
    • 在线课堂
    • 框架类库
    • 项目托管
    • 云服务

当前位置:首页>后端语言>PHP
<tfoot draggable='sEl'></tfoot>

thinkphp5 thinkphp5菜鸟教程

很多站长朋友们都不太清楚thinkphp5,今天小编就来给大家整理thinkphp5,希望对各位有所帮助,具体内容如下:

本文目录一览: 1、 thinkphp5配置二级域名 2、 小服务器选 ThinkPHP几好 3、 新手学习thinkphp6还是thinkphp5比较好? 4、 Thinkphp5防止某个IP多次登录的方法 5、 thinkphp5scopebase没有调用 6、 Thinkphp5项目在nginx服务器部署 thinkphp5配置二级域名

最近有一个项目要将移动端和PC端分离开来,比如访问xxx测试数据,展示的是PC端的页面。而访问m.xxx测试数据,展示的是移动端的页面。

在thinkphp5中可以这样操作:

首先,在application\config.php修改url_domain_deploy为true,如图:

其次,在application\route.php注册域名部署规则。

其中m是子域名,而mobile是模块名.这段表示任何以m为子域名的访问,都会被解析到mobile模块。

如果是在本地配置,要在hosts中添加

另外:

在apache或nginx中要配置两个虚拟主机,一个域名为xxx测试数据,另一个域名为m.xxx测试数据。根目录都指向public文件夹,但两个的端口号不能相同。

参考:

小服务器选 ThinkPHP几好

小服务器选ThinkPHP5好,因为ThinkPHP5比之前的版本好用了很多,增加了很多的一些特性,它采用全新的架构思想,引入了更多的PHP新特性,优化了核心,减少了依赖,实现了真正的惰性加载,支持一些小服务器使用,并针对API开发做了很多优化。所以小服务器选ThinkPHP5好。

新手学习thinkphp6还是thinkphp5比较好?

thinkphp5好

ThinkPHP5是一个全新的里程碑版本,包括路由、日志、异常、模型、数据库、模板引擎和验证等模块都已经重构,不适合原有3.2项目的升级,请慎重考虑商业项目升级,但绝对是新项目的首选(无论是WEB还是API开发),而且最好是忘记3.2版本的思维习惯,重新理解TP5。

Thinkphp5防止某个IP多次登录的方法

//昨天写的思路不对,重新写....

/**

*检查IP是否重复登录多次

*/

public function check_ip(){

//获取ip

$login_ip=$_SERVER["REMOTE_ADDR"];

$login_time=date("Y-m-d",time());

if(Cache::get('cache_login_data')==false){

//如果ip换成为false,那么创建一个缓存,并赋值第一个

$login_data[0]=['login_ip'=>$login_ip,'login_time'=>$login_time];

Cache::set('cache_login_data',$login_data);

}else{

//如果有cache,那么将这条数据加入到缓存中最后一条去

$cache_login_data=Cache::get('cache_login_data');

$count=0;

foreach($cache_login_dataas$k=>$v){

//如果当前缓存中的值含有当前ip和时间,那么计算当前时间内登录次数

if($v['login_time']==$login_time$v['login_ip']==$login_ip){

$count++;

if($count>10){

//当前ip登录超过10次

$this->error("你登录超过了10次,请不要再来登了...","Login/index");

}else{

//当前时间内有该IP登陆过,但是没有超过10次

$cache_login_data[count($cache_login_data)+1]=['login_ip'=>$login_ip,'login_time'=>$login_time];

Cache::set('cache_login_data',$cache_login_data);

}

}else{

//当前时间内,该IP没有登陆过

$cache_login_data[count($cache_login_data)+1]=['login_ip'=>$login_ip,'login_time'=>$login_time];

Cache::set('cache_login_data',$cache_login_data);

}

}

}

}

thinkphp5scopebase没有调用

一、调用方法。

1、调用当前控制器的test方法

1)、使用面向对象的技术

echo $this->test();

echo self::test();

echo Index::test();

2)、使用系统方法

echo action('test');

2、调用User控制器下的index方法

1)、命名空间

$model=new \app\index\controller\User;

echo $model->index();

2)、使用系统方法

echo action('User/index');

3)、调用后台模块下Index控制器index方法

a、命名空间

$model=new \app\admin\controller\Index;

echo $model->index();

b、使用系统方法

echo action('admin/Index/index');

二、执行流程。

1、入口文件(C:\AppServ\www\tp5\public\index.php)

作用:

1)定义目录常量

2)加载框架引导目录

2、加载框架的引导文件(C:\AppServ\www\tp5\thinkphp\start.php)

作用:

1) 引导基础文件

2) 对应用进行运转

3、加载框架的基础引导文件(C:\AppServ\www\tp5\thinkphp\base.php);

作用:

1) 加载系统常量

2) 引入loader类 (C:\AppServ\www\tp5\thinkphp\library\think\loader.php)

3) 引入环境变量

4) 注册自动记载机制

5) 注册异常处理机制(C:\AppServ\www\tp5\thinkphp\library\think\Error.php)

6) 记载惯例配置(C:\AppServ\www\tp5\thinkphp\convention.php)

4、运行应用(C:\AppServ\www\tp5\thinkphp\library\think\App.php) 下的run方法;

1)、第一步: 加载当前控制器中 initCommon() 方法

2)、第二步: 加载当前控制器中 init() 方法

a、加载各种配置文件

b、加载公共文件

c、加载语言包

3)、第三步: 设置时区

4)、第四步: 加载当前控制器 routeCheck() 方法 路由检测

5)、第五步: 调用控制器中exec方法

根据用户请求进行分发处理

6)、第六步: 根据不同请求类型记载对应文件 module方法

加载到对应的控制器和对应方法

5、响应输出

用户看到的所有界面就加载出来了

thinkphp5.0

不好意思,能点进来看一下嘛,真的能领金币······

芯悦社

?广告

?

JavaScript的异步操作

128阅读·0评论·0点赞

2020年12月15日

php定时自动运行thinkphp方法(含停止)

1370阅读·0评论·0点赞

2017年4月20日

tp5跨控制器调用方法

936阅读·0评论·0点赞

2021年8月12日

tp5 跨控制器调用

610阅读·0评论·1点赞

2021年8月12日

php thinkphp5模型类,thinkphp5调用模型的方法

570阅读·0评论·0点赞

2021年5月7日

tp5控制器调用,方法调用

2353阅读·0评论·0点赞

2018年8月3日

好消息!京东特价版搞活动啦~补贴加码真的省钱

?

京东

?广告

在使用tp框架的链式操作的field方法,出现数据库‘找不到列‘的问题

171阅读·1评论·0点赞

2021年3月3日

浅析ThinkPHP框架SQL操作链式写法原理

175阅读·0评论·0点赞

2015年8月10日

php调用class文件路径,thinkphp文件处理类Dir.class.php的用法分析

145阅读·0评论·0点赞

2021年3月23日

链式写法php,浅析ThinkPHP框架SQL操作链式写法原理

61阅读·0评论·0点赞

2021年4月21日

PHP技巧之链式调用

224阅读·0评论·0点赞

2020年6月12日

thinkphp5 控制器以及方法的调用

1223阅读·0评论·1点赞

2019年8月12日

tp5下自定义类,not found

1.2W阅读·6评论·2点赞

2017年6月23日

tp5中调用一些类的静态方法前面加\

3755阅读·0评论·1点赞

2017年7月13日

tp5怎么跨控制器调用别的方法

6105阅读·0评论·1点赞

2019年4月8日

thinkphp 输出变量使用函数处理

778阅读·0评论·0点赞

2016年8月23日

TP5行为扩展(钩子函数)

1.7W阅读·0评论·0点赞

2017年3月31日

TP5.1 调用request方法

3137阅读·0评论·0点赞

2018年12月7日

TP5调用模型内自定义方法

3294阅读·0评论·0点赞

2019年3月28日

去首页

看看更多热门内容

评论1

?

ctotalk

?

赞

very good

Thinkphp5项目在nginx服务器部署

1,切换到nginx的配置目录,找到nginx.conf文件

????cd ? /usr/local/nginx/conf

? ? vim ?nginx.conf

2,如果是单项目部署的话,只需要在nginx.conf文件里面加上以下

server{

????????listen 80;

????????# 域名,本地测试可以使用127.0.0.1或localhost

????????server_name ;

????????# php项目根目录

????????root /home/data-www/blog;

????????location /{

????????????????# 定义首页索引文件的名称

????????????????index index.php index.html index.htm;

? ??????????????# 影藏入口文件

? ??????????????if (-f $request_filename/index.html){

????????????????????????????rewrite (.*) $1/index.html break;

????????????????}

????????????????if (-f $request_filename/index.php){

????????????????????????????rewrite (.*) $1/index.php;

????????????????}

????????????????if (!-f $request_filename){

????????????????????????????rewrite (.*) /index.php;

????????????????}

????????????????try_files $uri $uri/ /index.php?$query_string;

????????}

????????# PHP 脚本请求全部转发到 FastCGI处理. 使用FastCGI协议默认配置.

????????# Fastcgi服务器和程序(PHP)沟通的协议

????????.location ~ .*\.php${

????????????????# 设置监听端口

????????????????fastcgi_pass 127.0.0.1:9000;

????????????????# 设置nginx的默认首页文件

????????????????fastcgi_index index.php;

????????????????# 设置脚本文件请求的路径

????????????????fastcgi_param SCRIPT_FILENAME$document_root$fastcgi_script_name;

????????????????# 引入fastcgi的配置文件

????????????????include fastcgi_params;

? ??????????????fastcgi_split_path_info ^(.+?\.php)(/.*)$;

????????????????set $path_info $fastcgi_path_info;

????????????????fastcgi_param PATH_INFO $path_info;

????????????????try_files $fastcgi_script_name =404;

????????}

}

3,如果多项目部署,就需要配置vhost

第一步:编辑nginx.conf文件,在最后加上 ? ??include ? ?vhost/*.conf;

第二步:进入vhost文件夹,创建 ? ?域名.conf ? ?文件,如创建一个:quanma.meyat测试数据.conf

第三步:编辑quanma.meyat测试数据.conf文件,内容如下:

????????server

????????{

????????????????listen 80;

????????????????server_name quanma.meyat测试数据;

? ? ? ? ? ? ? ? index index.html index.htm index.php default.html default.htm default.php;

????????????????root /data/wwwroot/default/quanma/public/;

????????????????#error_page 404 /404.html;

????????????????location / {

????????????????????????index index.html index.php;

????????????????????????if (-f $request_filename/index.html){

????????????????????????????????rewrite (.*) $1/index.html break;

????????????????????????}

????????????????????????if (-f $request_filename/index.php){

????????????????????????????????rewrite (.*) $1/index.php;

????????????????????????}

????????????????????????if (!-f $request_filename){

????????????????????????????????rewrite (.*) /index.php;

????????????????????????}

????????????????????????try_files $uri $uri/ /index.php?$query_string;

????????????????}

????????????????location ~ [^/]\.php(/|$)

????????????????{

????????????????????????# comment try_files $uri =404; to enable pathinfo

????????????????????????#try_files $uri =404;

????????????????????????fastcgi_pass 127.0.0.1:9000;

????????????????????????fastcgi_index index.php;

????????????????????????include fastcgi_params;

????????????????????????fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

????????????????????????fastcgi_split_path_info ^(.+?\.php)(/.*)$;

????????????????????????set $path_info $fastcgi_path_info;

????????????????????????fastcgi_param PATH_INFO $path_info;

????????????????????????try_files $fastcgi_script_name =404;

????????????????????????#include fastcgi.conf;

????????????????????????#include pathinfo.conf;

????????????}

????????????location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$

????????????{

????????????????????expires 30d;

????????????}

????????????location ~ .*\.(js|css)?$

????????????{

????????????????????expires 12h;

????????????}

????????????# Disallow access to .ht, .svn, .bzr, .git, .hg, .cvs directories

????????????location ~ /\.(ht|svn|bzr|git|hg|cvs) {

????????????????????deny all;

????????????}

????????????#access_log /date/nginx/bmp测试数据.conf/access.log main;

}

关于thinkphp5的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。

查看更多关于thinkphp5 thinkphp5菜鸟教程的详细内容...

声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did196694
更新时间:2023-04-26   阅读:31次

上一篇: phpajax后端 php后端接口怎么写

下一篇:phpc动态库 php调用动态库

最新资料更新

  • 1.phpdelete的简单介绍
  • 2.phpapp页面 php app
  • 3.基于PHP日记网站 phpstudy网站日志
  • 4.php的sql累加 sql实现累加
  • 5.hbuilder写php hbuilder写PHP
  • 6.搭建分站源码php 建立分站怎么建
  • 7.php的如何使用数组if php中数组
  • 8.郑州php业余培训 郑州php业余培训机构
  • 9.zblogphp分类 zblog asp
  • 10.php用户检索记录系统 php搜索数据库
  • 11.韩顺平php视频教程下载 韩顺平oracle视频
  • 12.php加密解密 php数据加密解密
  • 13.php页面加ico php嵌入网页
  • 14.php常量乱码 phpstorm乱码
  • 15.哈希mapphp 哈希map和哈希table区别
  • 16.修改文件限制php php修改上传文件大小
  • 17.iisphpma的简单介绍
  • 18.php人员查询系统 php信息查询系统
  • 19.php网站依赖 php运行网址
  • 20.包含苏州软世通php的词条

CopyRight:2016-2025好得很程序员自学网 备案ICP:湘ICP备09009000号-16 http://www.haodehen.cn
本站资讯不构成任何建议,仅限于个人分享,参考须谨慎!
本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。

网站内容来源于网络分享,如有侵权发邮箱到:kenbest@126.com,收到邮件我们会即时下线处理。
网站框架支持:HDHCMS   51LA统计 百度统计
Copyright © 2018-2025 「好得很程序员自学网」
[ SiteMap ]