-
小结。查看全部
-
MVC查看全部
-
url模式查看全部
-
3.2版本的ThinkPHP 常用函数: C( ),U( ) 统一写在框架 ThinkPHP/Common/function.php 文件中 3.2版本的ThinkPHP 用户自定义函数文件(应用级)放到 App/Home/Common 目录下,并取名为function.php才能被正确加载 PS:不建议将用户自定义的函数写在框架函数库( ThinkPHP/Common/function.php )中: 1.会使框架函数库变得臃肿不堪 2.会影响到其他应用的使用(如果其他应用共用了同一个框架)查看全部
-
目录文件查看全部
-
1.伪静态页面定义 没有与数据库交互就是静态网页,有数据交互才能产生内容就是动态页面。 伪静态让搜索引擎误以为该页面是静态(如截图:实际上浏览器访问的是 index控制器 的 user方法 传回来的数据,而不是一个真正的html静态页面,但TP让数据已静态页面的方式显示在浏览器中,这样搜索引擎就能将生成的伪静态页面认为是一个静态页面了),从而更快速搜索到。 因为动态页面之中如果数据量比较大,就会多花很多时间去读取数据,如果用户每一次都需要很多时间去读取数据,是不是会流失用户? 而静态方法的作用就是把动态页面获取到的内容保存在一个自动生成的html或者shtml页面中,用户第一次浏览页面的时候读取时间会慢,但是第二次第三次甚至直到数据没有变化前,用户基本不需要读取数据库中的数据就能浏览到之前第一次浏览时就保存好了的信息。 2. URL伪静态:设置URL伪静态有助于搜索引擎找到该页面,更轻易被蜘蛛爬虫抓取。 伪静态的设置: 伪静态页面后缀在框架配置文件中设置( ThinkPHP/Conf/convention.php )的( 'URL_HTML_SUFFIX'=>'html’, )但框架配置文件不建议修改(当多个项目共用一个框架时,修改框架配置文件会影响其他项目),所以只需要在项目配置文件中从新设置,用以覆盖框架配置文件的设置即可. 在APP/Config/config.php里设置 return array( 'URL_HTML_SUFFIX'=>'html|shtml|xml',//URL伪静态后缀设置(几种后缀用 ‘|’ 分隔) ) 此时就可以用 U() 函数定义伪静态页面的后缀了查看全部
-
thinkPHP中url模式中隐藏入口文件index.php的方法: 1.httpd.conf配置文件中加载了mod_rewrite.so模块 //在APACHE里面去配置 #LoadModule rewrite_module modules/mod_rewrite.so把前面的警号去掉 2.确保URL_MODEL设置为2,在项目的配置文件里写 return Array( 'URL_MODEL' => '2', //重写模式 ); 3需要在入口文件的同级添加 .htaccess文件 这个文件内容如下: <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L] </IfModule> ps:如果设置的模式为兼容模式,而 Apache 做了重写模式的相应设置,并且也完成了 .htaccess文件 的生存,兼容模式配合Web服务器重写规则的定义,可以达到和REWRITE模式一样的URL效果。查看全部
-
标示号查看全部
-
1、ThinkPHP中的URL模式: 如果整个应用下面的模块都是采用统一的URL模式,就可以在应用配置文件中设置URL模式,如果不同的模块需要设置不同的URL模式,则可以在模块配置文件中设置。 在配置文件中定义URL_MODEL的值 值为1 默认模式 pathinfo模式 形式如下:http://localhost/muke/index.php/Index/user/id/1.html 值为0 普通模式 形式如下:http://localhost/muke/index.php?m=Index&a=user&id=1 值为2 重写模式(不显示入口文件,此模式需要在服务器上做额外的配置) 形式如下:http://localhost/muke/Index/user/id/1.html 值为3 兼容模式 形式如下:http://localhost/muke/index.php?s=/Index/user/id/1.html 2、U()方法的使用 U('地址表达式',['参数'],['伪静态后缀’],[‘是否跳转’],[‘显示域名']) U('模块/方法',array('id'=>1),'html',true/false,'localhost'); 第二个参数是传参的值 第三个参数是指定浏览器显示的后缀名,一般为html,htm,shtml 第四个参数是是否需要跳转,通常设为false,不需要跳转 第五个参数是域名 例子:U('Index/user',array('id'=>1),'html',true,'localhost');查看全部
-
1、调用配置文件中设置的参数用C方法: 例如:在Conf文件夹下的config.php中定义了'name'=>'aa' 在控制器中调用name的值时应 C('name') [ 大C函数 用于查看和动态修改配置参数值] 2、在 非调试模式下 [ define('APP_DEBUG’,FALSE) ], TP 在第一次运行时,在项目文件夹下( Application文件夹下 )创建 Runtime文件夹 并将部分(不需要改变的)代码编译加载到此文件夹中,当系统再次运行时,就直接到此文件夹中调用,减少了编译时间.所以当修改 config.php 中参数的值重新运行时,用 C() 查看到的参数值没有改变 在 调试模式下 [ define('APP_DEBUG’,TURE) ], TP 在每次运行时都会进行编译,且不会将编译的代码存储在 Runtime文件夹 中,此时修改 config.php 中参数的值重新运行时,用 C() 查看到的参数值就改变. 3、若想调用自己新建配置文件中的值,需在config.php中加载此配置文件 例子:自己在Conf文件夹中新建了user.php,代码如下 return array( 'sex'=>'woman', LOAD_EXT_CONFIG=>'user', //加载同目录下的自定义配置文件,配置文件名必须与此参数值相同 ); 4.个人见解: 在 非调试模式下 [ define('APP_DEBUG’,FALSE) ], TP 在第一次运行时,在项目文件夹下( Application文件夹下 )创建的 Runtime文件夹中 编译加载的代码:在加载系统自定义的配置文件( config.php )中的代码时,只加载了 “ LOAD_EXT_CONFIG=>'user' “ 这条语句,所以当 user.php 和 config.php 配置文件中的参数都修改后,再次运行时, 用 C() 查看到的参数值 config.php 中修改的没有改变; user.php 中的就改变了. 所以 PS :无特殊情况,最好不要自定义配置文件查看全部
-
国内主流框架的使用率查看全部
-
框架简介查看全部
-
ThinkPHP的运行流程: 1.加载ThinkPHP.php 2.加载./thinkPHP/LIB/core路径下的核心文件 3.加载项目的文件->分析URL->调用相关的控制器 示例URL:http://localhost/index.php?m=index&a=index m->module 模块 控制器 a->action 方法 URL参数获取 与 简易控制器->方法 -示例: $module = isset($_GET['m'])?$_GET['m']:'index'; //获取控制器名 $action = isset($_GET['a'])?$_GET['a']:'index'; //获取方法名 echo $module.' and '.$action.’<br/>’; $demo = new $module(); //实例化模块 $demo -> $action(); //调用方法名 // 定义控制器 class Index{ function __construct(){ echo "Tndex contronller!<br/>"; } function Index(){ echo "Function index in contronller Index!"; } } exit; //因为这里退出了脚本,所以后面的定义项目目录与 ThinkPHP.php加载 都没有进行查看全部
-
一、关于ThinkPHP 国产、开源、面向对象、MVC框架。2006n,大道至简。 特点: 单一入口框架. 简单易用的MVC模式、查询语言丰富、详细的文档和中文注释。 官方有详细的中文文档、便于解决问题、强大的中文备注、查询语言丰富、简单的CVRD、连贯的操作、 比较实用的自动验证等功能。 官方下载ThinkPHP www.thinkphp.cn查看全部
-
体系有很多设计模式,比如MVC,单列,AR等。 为什么要使用框架? 快速高效的搭建稳定的业务系统;使业务系统更灵活、更易维护、专注于业务系统的设计。代码更加整洁、干净,节约时间。 什么时候能用到框架? 快速开发大型的系统 或 需要多人协作时的统一标准. 什么时候不需要用框架? 不知道,后期学习查看全部
举报
0/150
提交
取消