php的跨文件变量?

global $g是一个脚本文件中, 函数外部的变量在函数中要使用时的 全局变量

$_GET等是所谓的"超全局变量", 但仍然是只能在一个脚本的范围内使用

要在所有的文件直接都可以使用 的变量 :  $_SESSION $_COOKIE 或者使用数据库 中的表 字段.

读取项目Index中的配置文件?

注意, thinkphp中 使用了大量的 "单字母方法!" ,

一切都是:  为了快速开发, "写得更少, 做的更多"  " 更适合人的常规思维" ,

所以, 很多操作, 自己 凭想象都可以猜得到,  而thinkphp正是这样的 一切以方便 人为出发点进行的

可以在控制器IndexAction类的方法index中, 通过C()函数方法: echo C('下标') 来读取项目Conf/config.php

配置文件中的配置项.

注意, 读取配置文件时, 框架和实际项目的配置文件都将去读取, 但是有优先级的: 

 C('配置项的名称'),  总是优先查询 项目下的Conf/config.php中的内容, 然后是 去查询/读取 thinkphp框架中的 php配置文件.

控制器中的方法, 读取配置文件时, C()方法不区分 下标的大小写?

配置文件的下标都 写成"全大写", 在引用配置时, 可以写小写.

在thinkphp的ORM中, 数据库/表/记录 都有相应层次的 对象 与之相对应:

其中,  与表table 相对应的 对象是: 表对象:$db = M('table_name');

由于表的 select/ insert/delete/update 的功能, 就由 "表对象" 相应层次的操作方法: $db -> select()/insert()/delete()/update()来实现.

如何修改项目的配置项?

在进行orm操作时, 直接调用了M(odel)方法: $db=M('tableName'); 并没有像手工操作时, 指明数据库连接的参数和语句?

因为这些数据库连接参数 , 都在配置文件中进行了设置...

一般不建议修改thinkphp框架的配置文件convention.php(惯例配置文件),因为: 如果在升级框架时, 会用新框架的文件覆盖原来的框架

如果将项目的配置写在框架中, 则升级时将会被清除项目的配置.

所以, 如果项目的配置和convention.php的配置不合,  则把项目的配置项 写在Index/Conf/config.php文件中.

多个子项目?

一个整个的项目,  是由几个 子项目 构成的, 如:前台, 后台, 等等

你可以在整个项目中, 创建多个子项目,

每个子项目, 由一个 对应的 子项目的入口文件和一个对应的子项目目录 组成, 如:

前台: index.php 和 Index目录组成(前台用Index来表示)

后台:   admin.php 和 Admin 目录组成.(后台用Admin来表示).

---------------------------------

php函数调用方法:

如果是全局的函数, 当然就直接是 写函数名调用即可: global_foo_func();

但是, 如果你是调用的 类里面的 函数方法,  你就不能直接写 函数名了:  因为  你直接写函数名调用,  在全局函数中, 根本就没有你写的那个 函数. 所以不能直接写 .

第一,  如果要调用类中的函数, 你必须在方法前面 加上 类的对象(针对 实例方法), 或者类名 (针对 类方法)

第二,  调用的地方不同, 写法也不一样: 在类的外部 要用具体的实例名 或类名, 如$a_obj .   在类的内部 函数中,  要用其他借代 的名字, 如: $this, self::, parent等等

表示 调用这个函数的 对象和被调用函数的对象 是同一个对象

thinkphp-2的更多相关文章

  1. 制作类似ThinkPHP框架中的PATHINFO模式功能

    一.PATHINFO功能简述 搞PHP的都知道ThinkPHP是一个免费开源的轻量级PHP框架,虽说轻量但它的功能却很强大.这也是我接触学习的第一个框架.TP框架中的URL默认模式即是PathInfo ...

  2. 在 SAE 上部署 ThinkPHP 5.0 RC4

    缘起 SAE 和其他的平台有些不同,不能在服务器上运行 Composer 来安装各种包,必须把源码都提交上去.一般的做法,可能是直接把源码的所有文件复制到目录中,添加到版本库.不过,这样就失去了与上游 ...

  3. ThinkPHP+Smarty模板中截取包含中英文混合的字符串乱码的解决方案

    好几天没写博客了,其实有好多需要总结的,因为最近一直在忙着做项目,但是困惑了几天的Smarty模板中截取包含中英文混合的字符串乱码的问题,终于解决了,所以记录下来,需要的朋友看一下: 出现乱码的原因: ...

  4. ThinkPHP 模板substr的截取字符串函数

    ThinkPHP 模板substr的截取字符串函数在Common/function.php加上以下代码 /** ** 截取中文字符串 **/ function msubstr($str, $start ...

  5. thinkphp数据的查询和截取

    public function NewsList(){ $this->assign('title','news'); $p = I('page',1); $listRows = 6; $News ...

  6. [转]thinkphp 模板显示display和assign的用法

    thinkphp 模板显示display和assign的用法 $this->assign('name',$value); //在 Action 类里面使用 assign 方法对模板变量赋值,无论 ...

  7. [转]ThinkPHP中实例化对象M()和D()的区别,select和find的区别

    1.ThinkPHP中实例化对象M()和D()的区别 在实例化的过程中,经常使用D方法和M方法,这两个方法的区别在于M方法实例化模型无需用户为每个数据表定义模型类,如果D方法没有找到定义的模型类,则会 ...

  8. Kindeditor在ThinkPHP框架下的使用

    1.简单调用Kindeditor的图片上传功能: a.Html部署图片预览,记录图片上传成功之后的路径,以及上传图片点击按钮 <tr> <td>活动图片:</td> ...

  9. 在thinkphp中,写的博文标签多对多关系的标签频率统计算法

    常常看到别人的博客里面,或者网站里面有这样随机颜色,但字体大小与标签出现频率有关的标签云,于是自己就想写一个.至于颜色的随机显示,那就很简单了,这里就不列代码. 因为正在学thinkphp,所以数据查 ...

  10. thinkphp怎么修改配置进入默认首页

    thinkphp文件夹下config 里面有个convention.php文件 里面有三个配置 'DEFAULT_MODULE' => 'Home', // 默认模块 'DEFAULT_CONT ...

随机推荐

  1. dxut.h(29): fatal error C1083: Cannot open include file: 'dxsdkver.h': No such file or directory

    从网上download一个三维演示模型的软件编译发现报找不到dxsdkver.h文件,网上查阅这是MS的DirectX sdk中的库文件,于是先download DirectX SDK 安装之后,配置 ...

  2. Linux常用指令---$PATH (环境变量)

    实例一:设置临时环境变量 在linux服务器上设置临时环境变量,当退出shell环境时,自动销毁 export JAVA_HOME=/usr/java/jdk1.6.0_32 export class ...

  3. 导航栏全透明效果, 只保留左右两个按钮, 如何实现?以及关于NavigationController的小问题

    [self.navigationController.navigationBar setBackgroundImage:[UIImage imageWithColor:[UIColor clearCo ...

  4. SVN中trunk、branches、tags用法详解

    Subversion有一个很标准的目录结构,是这样的.比如项目是proj,svn地址为svn://proj/. 那么标准的svn布局是:svn://proj/|+-trunk+-branches+-t ...

  5. 清除sql server 登录的时候记住的账户

    SQl 2008如何清除登陆过的服务器名称   C:\Users\Administrator\AppData\Roaming\Microsoft\Microsoft SQL Server\100\To ...

  6. 九幽史程博:助力国内开发者借Win10东风出海

    微软Biuld2016大会刚刚结束,会议上微软CEO纳德拉Show出的一大波黑科技,又一次让软粉们心情为之振奋,信仰充值爆棚! 尽管过去一年微软的Win10 Mobile表现不尽如人意,可是凭借PC端 ...

  7. 微信支付开发-Senparc.Weixin.MP详解

    年底了,反而工作更忙了,我从15年11月开始写<1024伐木累>系列小说和爆笑对白,得到了很多身边的技术好友的支持,现在爆笑对白已经有越来越多的朋友一起帮着写段子,整理,包括小说内容的编辑 ...

  8. 简述WebService的使用(二)

    上集回顾 上一篇我简单的介绍了一下整个WebService建立和后端访问的过程,如果感兴趣可以看一看:简述WebService的使用(一) //如有不懂请留言,觉得有用请点赞 内容提要 这一篇主要介绍 ...

  9. redis学习笔记——(2)

    4.Redis中的string类型 String类型是最简单的类型,一个Key对应一个Value,String类型是二进制安全的.Redis的String可以包含任何数据,比如jpg图片或者序列化的对 ...

  10. solr导入mysql数据库

    感谢ITeye的博主viskyzz分享的经验,笔者基本参考ta的方法.然而,解决中间出现的问题时也融入了自己的经验. 查看ta的原文请戳: http://tbwuming.iteye.com/blog ...