• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

ThinkPHP学习笔记(三)有关项目中URL的路径有关问题和使用frame搭建页面的

php 搞代码 3年前 (2022-01-24) 13次浏览 已收录 0个评论

ThinkPHP学习笔记(三)有关项目中URL的路径问题和使用frame搭建页面的

在thinkphp中有很多自定义的常量路径,具体如下:

//        echo "
^_^ Hello,欢迎使用ThinkPHP
"; //系统常量定义 //去THinkPHP手册中进行查找// echo "
"."网站的根目录地址".__ROOT__." ";// echo "
"."入口文件地址".__APP__." ";// echo "
"."当前模块地址".__URL__." ";// echo "
"."当前url地址".__SELF__." ";// echo "
"."当前操作地址".__ACTION__." ";// echo "
"."当前模块的模板目录".__CURRENT__." ";// echo "
"."当前操作名称".ACTION_NAME." ";// echo "
"."当前项目目录".APP_PATH." ";// echo "
"."当前项目名称".APP_NAME." ";// echo "
"."当前项目的模板目录".APP_TMPL_PATH." ";// echo "
"."项目的公共文件目录".APP_PUBLIC_PATH." ";// echo "
"."项目的配置文件目录".CONFIG_PATH." ";// echo "
"."项目的公共文件目录".COMMON_PATH." ";// //自动缓存与表相关的全部信息// echo "
"."项目的数据文件目录".DATA_PATH." runtime下的data目录";// echo "
"." ".GROUP_NAME."";// echo "
"." ".IS_CGI."";// echo "
"." ".IS_WIN."";// echo "
"." ".LANG_SET."";// echo "
"." ".LOG_PATH."";// echo "
"." ".LANG_PATH."";// echo "
"." ".TMPL_PATH."";// // //js放入的位置,供多个应用的公共资源// echo "
"." ".WEB_PUBLIC_PATH."";

登录页面

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">Insert title here<body>模板路径__URL__:当前模块的URL地址
../Public 当前模板的public目录
__PUBLIC__ 与主目录平级的public目录,供多个项目应用
__TMPL__ 项目模板目录
__APP__ 项目的Url
__ACTION__当前操作的URL地址
__SELF__ 当前整个路径的链接

获取页面:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">Insert title here<body>

获取的action:

<?php// 本类由系统自动生成,仅供测试用途//最好独立写成php对应的文档class UserAction extends Action{	//http://localhost/MyThinkPHP/admin.php/index/hello  	public function index(){        header("Content-Type:text/html; charset=utf-8");        echo "UserAction.index!";        $this->verify();            }      public function fuck(){        header("Content-Type:text/html; charset=utf-8");        echo "UserAction.the world!";        $this->verify();            }    private function verify(){    	$this->display();    	echo "
UserAction.验证方法"; } public function login(){ $this->assign("content","这是内容啊"); $this->display(); echo "
UserAction.验证方法"; } public function add(){ dump($_POST); echo $_POST['username']; $this->assign("username",$_POST['username']); $this->display(); }}?>

使用frame搭建页面:不要引入静态的html文件,应该在Action的方法中填写,如下:

indexAction

<?php// 本类由系统自动生成,仅供测试用途/** * thinkphp一共有四种路径访问模式,可以在conf文件夹中修改 *	0: 普通模式:http://localhost/MyThinkPHP/admin.php?m=index&a=hello *	1:pathInfo: *		http://localhost/MyThinkPHP/admin.php/index/hello *		http://localhost/MyThinkPHP/admin.php/index/hello *	2:rewrite(伪静态):自己可以写相关的rewrite规则,也可以使用系统提供的rewrite规则 *		http://localhost/MyThinkPHP/index/hello *		Apache收藏的URL指南中有介绍 *	3:兼容模式:路径访问(防止服务器不支持pathInfo模式) *		http://localhost/MyThinkPHP/admin.php?s=/index/hello *	 *	如何在MVC中来显示模板 *		 */class IndexAction extends Action{	//thinkphp当中模块控制器,动作,与URL路径之间的关系	//我们的 所以动作,都必须经过项目入口文件,只有这样才能找到模块(控制器)	//http://localhost/MyThinkPHP/admin.php/index/index	//访问indexAction中的index方法(默认访问indexAction)    public function index(){        header("Content-Type:text/html; charset=utf-8");//        echo "
^_^ Hello,欢迎使用ThinkPHP
"; //系统常量定义 //去THinkPHP手册中进行查找// echo "
"."网站的根目录地址".__ROOT__." ";// echo "
"."入口文件地址".__APP__." ";// echo "
"."当前模块地址".__URL__." ";// echo "
"."当前url地址".__SELF__." ";// echo "
"."当前操作地址".__ACTION__." ";// echo "
"."当前模块的模板目录".__CURRENT__." ";// echo "
"."当前操作名称".ACTION_NAME." ";// echo "
"."当前项目目录".APP_PATH." ";// echo "
"."当前项目名称".APP_NAME." ";// echo "
"."当前项目的模板目录".APP_TMPL_PATH." ";// echo "
"."项目的公共文件目录".APP_PUBLIC_PATH." ";// echo "
"."项目的配置文件目录".CONFIG_PATH." ";// echo "
"."项目的公共文件目录".COMMON_PATH." ";// //自动缓存与表相关的全部信息// echo "
"."项目的数据文件目录".DATA_PATH." runtime下的data目录";// echo "
"." ".GROUP_NAME."";// echo "
"." ".IS_CGI."";// echo "
"." ".IS_WIN."";// echo "
"." ".LANG_SET."";// echo "
"." ".LOG_PATH."";// echo "
"." ".LANG_PATH."";// echo "
"." ".TMPL_PATH."";// // //js放入的位置,供多个应用的公共资源// echo "
"." ".WEB_PUBLIC_PATH.""; $this->display(); } public function top(){ $this->display(); } public function left(){ $this->assign("content","这是内容啊"); $this->display(); } public function right(){ $this->display(); } //访问模式:path_Info //http://localhost/MyThinkPHP/admin.php?m=index&a=hello //http://localhost/MyThinkPHP/admin.php/index/hello public function hello(){ header("Content-Type:text/html; charset=utf-8"); echo "这是我自己的方法哦!"; } /** * 模板使用 * 大小写一定要注意 */ public function template(){ //必须在对应的项目的Tpl的default下创建与当前控制器名相同的文件夹Index //然后html文件名为方法名 //默认分割符方式{$content} //可以在模板指南针中进行定界符的修改 $this->assign("content","小和尚下山去化斋,老和尚有交来2源gaodaima#com搞(代@码&网代"); $this->display(); //1.同级下面指定新模板 //$this->display("newTemplate"); //2.跨控制器的引用模板(也可以添加分组信息) //$this->display("分组:User:verify"); //3.跨皮肤引用// $this->display("[email protected]:verify"); //4.全路径输出(在项目同级目录新建public文件夹) //加载文件的位置全以主入口文件来定位// $this->display("./public/ss.html"); //display参数// $this->display("位置","utf-8","text/xml"); }}?>

index.html

<frameset rows="20%,*">	<frame src="__URL__/top" name="top">	<frameset rows="20%,*">		<frame src="__URL__/left" name="left">		<frame src="__URL__/right" name="right">	

left.html

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><body>我是模板我是模板
{$content}
我是模板我是模板

right.html top.html

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><body>我是模板我是模板


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:ThinkPHP学习笔记(三)有关项目中URL的路径有关问题和使用frame搭建页面的

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址