您的位置:首页 > 编程语言 > PHP开发

thinkphp输出url路径 U函数

2015-08-23 10:22 513 查看
thinkphp3.2.3

普通模式的URL是
http://127.0.0.1/cmf/index.php?m=home&c=index&a=index

PATHINFO模式的URL是
http://127.0.0.1/cmf/index.php/home/index/index

一个如下路径的控制器

htdocs\wish\Index\Home\Controller\IndexController.php

Index : APP_NAME

Home: DEFAULT_MODULE 

Comtroller:DEFAULT_CONTROLLER

index控制器的index方法:
class IndexController extends Controller {
public function index(){
//dump($_GET);
echo U('index');
}
}


在浏览器中输入
http://127.0.0.1/wish/index.php?m=home&c=index&a=index


http://127.0.0.1/wish/index.php/home/index/index


http://127.0.0.1/wish/index.php

在'URL_MODEL'             => 0,时,会输出
/wish/index.php?m=Home&c=Index&a=index
在'URL_MODEL'             => 1,时,会输出
/wish/index.php/Home/Index/index.html

3.2中分模块,

在入口文件index.php中

define ('APP_NAME' , 'App');
define ('APP_PATH' , './App/');
define ('APP_DEBUG' , 'TRUE');
include './ThinkPHP/ThinkPHP.php'

会在App目录下默认自动生成Home目录(Home模块)·

如果再加上下面一行

define('BIND_MODULE','Admin');

就会在App目录下自动生成Admin模块,然后把这行删掉就行了

可以在App/Common/Conf/config.php中配置默认模块DEFAULT_MODULE


return array(
//'配置项'=>'配置值'
//  'APP_GROUP_LIST'=>'Index,Admin',
// 'DEFAULT_GROUP'=>'Index',

'DEFAULT_MODULE'=>'Admin',
);


打印
function p($array)
{
dump($array,1,'<pre>',0);
}

路径:以网站根目录为根路径,比如 C:\xampp\htdocs\wish313,则wish313是根路径
<scripttype="text/javascript"src='/wish313/Public/Js/index.js'></script>

更改__PUBLIC__ ,__PUBLIC__ 是模板替换不是常量
'TMPL_PARSE_STRING'=>array(
'__PUBLIC__'=>__ROOT__. '/' .APP_NAME.'/Tpl/Public',
),


调试打开

在index.php中定义APP_DEBUG
define ('APP_DEBUG' , 'TRUE');

打开SHOW_PAGE_TRACE

在config.php中定义
'SHOW_PAGE_TRACE'=>'true',


一个错误的U方法使用,导致我调了一个小时

<form action="{:U(GROUP_NAME . './Login/login')}" method="post" id="login">     -----------多了一个点

会提交到
http://127.0.0.1/blog313/index.php/Admin./Login/login
而在login方法中
$url = U(GROUP_NAME . '/Index/index');
echo $url;die;
http://127.0.0.1/blog313/index.php/Admin./Admin/Login/login
正确的是:

<form action="{:U(GROUP_NAME . '/Login/login')}" method="post" id="login">

M方法:

在App/Conf/config.php中配置好数据库参数
'DB_HOST' => '127.0.0.1',
'DB_USER'=>'root',
'DB_PWD'=>'',
'DB_NAME'=>'hd_think',
'DB_PREFIX'=>'hd_',

则在控制器函数中直接使用M函数就可以读出hd_think数据库的hd_wish表的数据
$wish = M('wish')->select();
$wish = M('wish')->limit(10)->select();
dump($wish);

$this->assign('wish',$wish);//通过assign函数传输打牌html页面中
或者直接赋值
$this->wish=$wish

在对应模板函数中,获取wish元素值
<foreach name='wish' item='v'>
{$v.content}
{$v.username}
</foreach>


删除
$res =  M('wish')->where('id>0')->delete();

添加
$data =array(
'content' => I('content'),
'username' => I('username'),
'time'=>time()
);
// p($data);
$id = M('wish')->data($data)->add();
if($id)
{
$this->success('发布成功',U('index'));
}
else{
$this->error('发布失败');
}


F方法

从文件读数据到变量,或写变量到文件
F('phiz',$phiz,'./Data/');//将变量phiz写到data目录下的phiz.php文件里

$phiz =  F('phiz','','./Data/');//从data目录下的phiz.php文件里读出内容到变量phiz
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: