thinkphp3.1课程 1-2 thinkphp中入口文件的实质是什么

一、总结

一句话总结:在thinkphp中,我们访问的始终是入口文件,并没有主动去访问任何一个其他文件,只不过在入口文件体内,把这些类包进来而已,然后调用这些包进来的文件的方法,就是new这个对象,用->调用这个对象的方法,所以我们在类的方法里面找图片的时候,只是相对入口文件去找,否则就会找错人

1、thinkphp中的localhost/mytp/index.php?m=Index&a=show路径中的各个部分是什么意思?

a是action,表示方法
m表示模块module,也就是控制器
localhost/mytp/index.php?m=Index&a=show
等价于
localhost/mytp/index.php/Index/show
Index控制器,show方法,
不过thinkphp中推荐使用后者

2、thinkphp为什么要将路径从localhost/mytp/index.php?m=Index&a=show的形式变成localhost/mytp/index.php/Index/show的形式?

因为百度喜欢收录静态文件,localhost/mytp/index.php/Index/show表示参数不会随便的变化,所以这样做是为了百度认识目录,它可以让百度的搜索引擎把这个误认为是一个目录,有利于提高收录率

3、thinkphp中入口文件的实质是什么?

在thinkphp中,我们访问的始终是入口文件,并没有主动去访问任何一个其他文件,只不过在入口文件体内,把这些类包进来而已,然后调用这些包进来的文件的方法,就是new这个对象,用->调用这个对象的方法,所以我们在类的方法里面找图片的时候,只是相对入口文件去找,否则就会找错人

4、thinkphp可以操作配置文件么?

可以,而且有助手函数config()可以很方便的操作,也可以动态的设置配置

系统定义了一个助手函数config,以上可以简化为:

echo config('配置参数1');

二、thinkphp中入口文件的实质是什么

1、相关知识

ThinkPHP框架:
1.入门
2.入口
3.配置
4.函数和类库
5.控制器
6.模型
7.视图
8.模板引擎
9.缓存
10.扩展类
11.附录

入门:
1.安装TP框架
2.目录结构
3.命名规范
4.MVC开发模式
    1)M model(Model类)
    2)V view(视图-模板)
    3)C control(控制器)

5.开发流程
体验mvc开发模式

入口:
1.url
http://localhost/index.php/Index/index
http://localhost/index.php?m=Index&a=index
1)index.php 入口文件
2)Index     模板类文件-IndexAction.class.php
3)index     类方法-public function index(){}

2.C操作
$user=M('User');  //连接数据库
$rows=$user->select(); //查询数据,返回二维数组
$this->assign('rows',$rows); //给模板分配数组
$this->display(); //加载模板

3.V操作
<volist name='rows' id='row'>
    <tr>
        <td>{$row['id']}</td>
        <td>{$row['username']}</td>
        <td>{$row['password']}</td>
    </tr>
</volist>

配置:
1.全局配置文件
mytp/ThinkPHP/Conf/convention.php:
'DB_TYPE'               => 'mysql',     // 数据库类型
'DB_HOST'               => 'localhost', // 服务器地址
'DB_NAME'               => 'mytp',          // 数据库名
'DB_USER'               => 'root',      // 用户名
'DB_PWD'                => '123',          // 密码
'DB_PORT'               => '',        // 端口
'DB_PREFIX'             => '',    // 数据库表前缀

2.应用配置文件
mytp/Home/Conf/config.php:
'DB_NAME'               => 'mytp2',          // 数据库名

3.获取配置文件中的选项
echo C('DB_NAME');

 
 

thinkphp3.1课程 1-2 thinkphp中入口文件的实质是什么的更多相关文章

  1. ThinkPHP 中入口文件中的APP_DEBUG为TRUE时不报错,改为FALSE时报错

    今天好不容易将一个新闻网做好了(ThinkPHP框架做的),但是,当我将入口文件中定义调试模式设为FALSE,即define('APP_DEBUG',False),然后再刷新网站的时候,就提示报错,报 ...

  2. thinkphp3.1课程 1-1 为什么thinkphp在开发好后需要关掉开发模式

    thinkphp3.1课程 1-1 为什么thinkphp在开发好后需要关掉开发模式 一.总结 一句话总结:因为调试模式中会记录你所有的调试信息,比如a调用b,b调用c,c调用d,比如你从哪个数据库取 ...

  3. ThinkPHP3.2.3完整版创建前后台入口文件 http://jingyan.baidu.com/article/7e4409533fc1092fc1e2ef53.html

    ThinkPHP3.2.3完整版创建前后台入口文件   1 2 3 4 5 6 7 分步阅读 ThinkPHP是为了简化企业级应用开发和敏捷WEB应用开发而诞生的优秀的国产php框架,值得我们去探索学 ...

  4. ThinkPHP在入口文件中判断是手机还是PC端访问网站

    <?php// +----------------------------------------------------------------------// | ThinkPHP [ WE ...

  5. 【Thinkphp】入口文件和配置文件

    一.入口文件 ThinkPHP采用单一入口模式进行项目部署和访问 入口文件代码 <?php define('APP_DEBUG',TRUE);//打开调试模式 在生产环境中应该关闭 define ...

  6. 在thinkphp中js文件添加路径

    JS文件不认识__URL__这些tp独特的链接,所以要自己重新定义url,才能使用这些路径. 在js对于的模板上定义url 然后在js文件中引用

  7. thinkphp中JS文件不能写__ROOT__变量

    如题 ,如果写了,就不能正确读取JS中的URL,

  8. 关于electron中入口文件main.js一些重要参数(持续更新maybe)

    const {app, BrowserWindow} = require('electron') const path = require('path') let mainWindow functio ...

  9. Thinkphp中的 I 函数(Thinkphp3.2.3版本)

    I 函数的作用是获取系统变量,必要时还可以对变量值进行过滤及强制转化,I 函数的语法格式: I('变量类型.变量名/修饰符',['默认值'],['过滤方法或正则'],['额外数据源']) 一.获取变量 ...

随机推荐

  1. 自己定义控件-DownSlidingDrawer

    一.描写叙述 能够下拉的 SlidingDrawer 二.效果图 图片是网上找到,可是效果是一样的 三.源代码 https://github.com/mentor811/Demo_MySlidingD ...

  2. js---16继承

    123 instanceof Number;//false,要左边是对象右边是函数 typeof 123 ; //number new Number(123) instanceof Number; / ...

  3. js---11运算符,流程控制,真假

    <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content ...

  4. Token ,Cookie和Session的区别--学习笔记

    http://blog.csdn.net/tobetheender/article/details/52485948 Token token的意思是“令牌”,是用户身份的验证方式,最简单的token组 ...

  5. OpenCV —— 视频播放控制

    创建滚动条,实现滚动条随视频播放移动. #include "cv.h" #include "highgui.h" CvCapture* capture=NULL ...

  6. sleep---暂停指定的时间

    sleep命令可以用来将目前动作延迟一段时间. 使用权限:所有使用者. 语法 sleep [--help] [--version] number[smhd] 参数说明: --help : 显示辅助讯息 ...

  7. Webservice银行报文接口设计

      Preface: 合理的软件架构设计其好处是不言而喻的,系统具有清晰的软件结构,良好的可扩展性,类的职能单一明确,系统的复杂度底.此前的一个实际项目中总结了些关于OO设计的实际应用,主要是围绕'高 ...

  8. windows删除多余启动引导项

    方法1: 按快捷键win+r,打开运行界面,输入msconfig. 点击确定,进入系统配置,选择引导选项卡,如图: 选中你不需要的启动项,点击下面的删除按钮即可.删除完成之后点击确定,重启计算机就可以 ...

  9. Codeforces 129A-Cookies(暴力)

    A. Cookies time limit per test 2 seconds memory limit per test 256 megabytes input standard input ou ...

  10. C++ static 静态成员变量 和 静态成员函数

    静态(static) 成员 变量 1•  静态成员变量的初始化须要在类外完毕. 2•  静态成员不属于详细的某个对象,而属于整个类: 3•  全部对象共享本类中的静态成员: 4•  静态成员最好直接通 ...