thinkPHP的學(xué)習(xí)

近幾天都在學(xué)習(xí)php 因此總結(jié)一下

首先使用的是thinkphp3.1.3的模板

在XAMPP的htdoc目錄下新創(chuàng)建一個(gè)tt目錄 隨后將thinkphp導(dǎo)入 隨后建立一個(gè)index.php
目錄結(jié)構(gòu)如下

1.png

這個(gè)index.php就是thinkphp的入口文件 可以有多個(gè)入口文件 比如前臺(tái)的入口文件 index.php和后臺(tái)的入口文件 admin.php等

在index.php中定義自己的項(xiàng)目路徑 取項(xiàng)目名稱 為app 引入think.php下的php文件

<?php
//定義項(xiàng)目名稱
define('APP_NAME', 'App');
//定義項(xiàng)目路徑 記得加斜杠
define('APP_PATH','./App/');
//引入thinkphp文件
require('./ThinkPHP/ThinkPHP.php');
?>

此時(shí)這個(gè)app項(xiàng)目便已經(jīng)創(chuàng)建完成了 在瀏覽器中輸入localhost/tt/index.php
就可以看到php的歡迎界面
此時(shí)可以看項(xiàng)目的目錄結(jié)構(gòu)

2.png

THINKPHP是系統(tǒng)自帶的 而app是自己的項(xiàng)目生成的文件
首先是配置文件 有系統(tǒng)自帶的配置文件 最好不要去改動(dòng) 在thinkPHP/Conf目錄下
而項(xiàng)目的配置文件在APP/Config下

<?php
return array(
    //'配置項(xiàng)'=>'配置值'
    "URL_MODEL" => 0,
);
?>

有四種URL模式
可以通過URL_MODEL來進(jìn)行配置 可以通過”

  C("URL_MODEL");

來進(jìn)行輸出
可以通過U函數(shù)進(jìn)行輸出

//模塊名/方法名 參數(shù) 后綴 是否跳轉(zhuǎn) 域名來進(jìn)行輸出
echo U("Index/user",array("id" => 1),'shtml',false,localhost);
//user方法
   public function user() {
echo "id is".$_GET["id"];
echo "這是index的user方法";
    }

這樣即可輸出
http://localhost/tp/admin.php/Index/user/id/1.html
主要有以下幾種URL模式
//默認(rèn)模式 pathInfo 模式1
//0 普通模式
//2重寫模式ec
//3兼容模式
模塊的輸出
模塊相當(dāng)于MVC中的V 就可以想到是html的文件
在thinkphp3.1.3的文件中 實(shí)在項(xiàng)目的TPL文件夾下 因此建立一個(gè)index目錄
隨后創(chuàng)建一個(gè)index.html 實(shí)際上控制器即為L(zhǎng)ib下的action下的IndexAction.class.php目錄

3.PNG

隨后在contrller中進(jìn)行渲染 這一步通常是在最后執(zhí)行的
首先進(jìn)行賦值

$name = "caokaiqiang";
 $this -> name = $name;
//渲染
  $this -> display();

在index.html中進(jìn)行模塊的輸出

{$name};

這樣即可
也可以通過assign的方式進(jìn)行連續(xù)的賦值

$this->assign(name,$name)->assign(age,$age);

隨后進(jìn)行輸出即可

{$name}
{$age}

也可以通過數(shù)組的方式進(jìn)行賦值 數(shù)組的輸出有兩種 一種是通過[]訪問 一種是通過.來進(jìn)行訪問

 $me["age"] = 18;
   $me["name"] = "kevin";
   $this -> assign(me,$me);

隨后進(jìn)行輸出

{$me.age}
{$me["name"]}

調(diào)用函數(shù) 可以直接在模塊輸出的時(shí)候進(jìn)行調(diào)用

{$me["name"] | md5 | substr = 0,5}

這里調(diào)用了 md5加密和字符串的截取
數(shù)組的輸出 可以有兩種方式 一種使用volist方法 還有是foreach的方法
首先定義數(shù)組

  $person = array(
    1 => array("name" => "jack","age" => "18"),
     2 => array("name" => "tom","age" => "19"),
      3 => array("name" => "sam","age" => "20"),
       4 => array("name" => "hhh","age" => "21"),
    );

以下中的name 都是在action中賦值的 譬如以下的id 就是賦好值傳過來的
隨后進(jìn)行輸出
volist方法更靈活 可以定義偏移量跨扮,和如果值沒有的話 可以設(shè)置默認(rèn)值等
而foreach的方法只能進(jìn)行輸出

<volist name = "person" id = "data" offset = "1" length = "3">
{$data["name"]}---{$data["age"]}<br>
</volist>
<foreach name = "person" item = "data">
{$data["name"]} {$data["age"]}<br>
</foreach>

if語(yǔ)句的使用 主要是conditon的書寫
要記住else if和else后面必須加結(jié) 束符號(hào) /否則會(huì)連續(xù)執(zhí)行

<if condition = "$num gt 10">num 大于10 
<elseif condition = "$num lt 10"/>num 小于10
<else />num等于10
</if>

eq 等于 neq 不等于 gt 大于 egt 大于等于 lt 小魚 ltq 小于等于 heq 恒等于 nheq 恒不等于
for 判斷 start和end指明 隨后指明comparison 默認(rèn)是小于

<!-- for循環(huán)輸出  默認(rèn)是小于-->
<for start = "1" end = "10" comparison = "elt" name = "k">
{$k}

switch操作

<switch name = "name">
<case value = "laoshi">jjj</case>
<case value = "xiaohong/hhh">hhh</case>
<default>cccccc</default>
</switch>

比較標(biāo)簽 可以直接指定比較標(biāo)簽名 或者使用compare的方法

<!-- 比較標(biāo)簽 name = "變量名" value = "比較的值" -->
<eq name = "id" value = "12">num=12<else/>num!=12</eq>
<compare name = "id" value = "12" type = "eq">num = 12<else/>num!=12</compare>

in和notin 在這個(gè)區(qū)間和不在這個(gè)區(qū)間

<!-- 區(qū)間范圍的方法 可以用in 和 not in 這兩種方法 -->
<in value = "1,10" name = "id">有12這個(gè)數(shù)<else/>沒有12這個(gè)數(shù)</in>

區(qū)間的方法可以用between

<!-- 區(qū)間的方法 -->
<between value = "1,10" name = "id">有12這個(gè)數(shù) <else/>沒有12這個(gè)數(shù)</between>

要記住range這個(gè)方法只能代替range和不能代替between

<!-- 區(qū)間的方法 -->
<range value = "1,12" name ="id" type = "in">有12這個(gè)數(shù)<else/>沒有12這個(gè)數(shù)</range>

三元運(yùn)算符和平常的都一樣

{$id >=12 ?"大于等于12" :"小于12"}

官方推薦的在html文件中插入php文件的方法
<php></php>而不建議使用<?php ?>

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市锦溪,隨后出現(xiàn)的幾起案子苫昌,更是在濱河造成了極大的恐慌,老刑警劉巖瘾杭,帶你破解...
    沈念sama閱讀 211,817評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異汰具,居然都是意外死亡卓鹿,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,329評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門留荔,熙熙樓的掌柜王于貴愁眉苦臉地迎上來吟孙,“玉大人,你說我怎么就攤上這事聚蝶〗芗耍” “怎么了?”我有些...
    開封第一講書人閱讀 157,354評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵既荚,是天一觀的道長(zhǎng)稚失。 經(jīng)常有香客問我,道長(zhǎng)恰聘,這世上最難降的妖魔是什么句各? 我笑而不...
    開封第一講書人閱讀 56,498評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮晴叨,結(jié)果婚禮上凿宾,老公的妹妹穿的比我還像新娘。我一直安慰自己兼蕊,他們只是感情好初厚,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,600評(píng)論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著孙技,像睡著了一般产禾。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上牵啦,一...
    開封第一講書人閱讀 49,829評(píng)論 1 290
  • 那天亚情,我揣著相機(jī)與錄音,去河邊找鬼哈雏。 笑死楞件,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的裳瘪。 我是一名探鬼主播土浸,決...
    沈念sama閱讀 38,979評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼彭羹!你這毒婦竟也來了黄伊?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,722評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤皆怕,失蹤者是張志新(化名)和其女友劉穎毅舆,沒想到半個(gè)月后西篓,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體愈腾,經(jīng)...
    沈念sama閱讀 44,189評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡憋活,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,519評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了虱黄。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片悦即。...
    茶點(diǎn)故事閱讀 38,654評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖橱乱,靈堂內(nèi)的尸體忽然破棺而出辜梳,到底是詐尸還是另有隱情,我是刑警寧澤泳叠,帶...
    沈念sama閱讀 34,329評(píng)論 4 330
  • 正文 年R本政府宣布作瞄,位于F島的核電站,受9級(jí)特大地震影響危纫,放射性物質(zhì)發(fā)生泄漏宗挥。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,940評(píng)論 3 313
  • 文/蒙蒙 一种蝶、第九天 我趴在偏房一處隱蔽的房頂上張望契耿。 院中可真熱鬧,春花似錦螃征、人聲如沸搪桂。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,762評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)踢械。三九已至,卻和暖如春魄藕,著一層夾襖步出監(jiān)牢的瞬間内列,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,993評(píng)論 1 266
  • 我被黑心中介騙來泰國(guó)打工泼疑, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留德绿,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,382評(píng)論 2 360
  • 正文 我出身青樓退渗,卻偏偏與公主長(zhǎng)得像移稳,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子会油,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,543評(píng)論 2 349

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,789評(píng)論 25 707
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理个粱,服務(wù)發(fā)現(xiàn),斷路器翻翩,智...
    卡卡羅2017閱讀 134,633評(píng)論 18 139
  • 本周的《奔跑吧》即將迎來收官之作塞椎,“陸地CP”究竟是導(dǎo)演組故意為之,還是天作之合睛低,也只有當(dāng)事人自己知道案狠。但小編今天...
    戒咖啡cxj閱讀 217評(píng)論 0 0
  • 閉上眼,他慢慢沉入水中钱雷,殘留下一串咕嚕的氣泡骂铁,頭發(fā)像是水草一樣在水里若隱若現(xiàn)。 淺暖色的浴燈在重疊纏繞的模糊水汽里...
    陳可鹽閱讀 633評(píng)論 2 2
  • 題目1: DOM0 事件和DOM2級(jí)在事件監(jiān)聽使用方式上有什么區(qū)別罩抗? DOM0 事件JavaScript和HTML...
    無(wú)目的閱讀 111評(píng)論 0 0