thinkphp自定义标签库
thinkphp ~ php中 的類(lèi), 的成員變量, 本身是沒(méi)有類(lèi)型說(shuō)明的, 那么我怎么知道它的類(lèi)型呢? 或初始值呢?
通常在類(lèi)定義中, 如果能給一個(gè)初始值的(對(duì)于已知簡(jiǎn)單類(lèi)型的),最好給一個(gè)初始值, 以說(shuō)明其初始值或類(lèi)型(盡管類(lèi)型是可以改變的,但是不會(huì)去做自己整自己的傻事), 如果成員是類(lèi)實(shí)例,則不說(shuō);
然后要在 $__construct中去初始化成員, 或初始化 對(duì)象成員.
對(duì)于tp框架的類(lèi)庫(kù) 內(nèi)部的操作, 好像 根路徑是從 ThinkPHP/Library 為根開(kāi)始的, 即?就表示 ThinkPHP/Library, 而項(xiàng)目模塊中,自定義的類(lèi)的 路徑好像是從 Home開(kāi)始的
其實(shí)自定義標(biāo)簽很有用, 以前老是想在前臺(tái)html頁(yè)面中實(shí)現(xiàn)某些功能, 都沒(méi)有做到,比如 要連續(xù)地輸入多個(gè)空格,..., 因?yàn)槠渲幸獱可娴绞褂胮hp的后臺(tái)代碼,現(xiàn)在有了自定義標(biāo)簽庫(kù),就可以用html的標(biāo)簽去調(diào)用用php實(shí)現(xiàn) 的代碼功能了.
php在定義類(lèi)的時(shí)候, 跟C++有點(diǎn)區(qū)別, c++中定義類(lèi),要在定義的后面加上分號(hào);, 類(lèi)定義作為是作為一個(gè)語(yǔ)句的, 而php類(lèi)的定義, 最后面可以不加分號(hào);
public, protected, private等access level只是針對(duì) "類(lèi)的" 成員, 成員變量和成員函數(shù)才用這個(gè), 對(duì)函數(shù)內(nèi)部的變量是不用這個(gè)的.
不要重復(fù)的 反復(fù)的犯一個(gè)低級(jí)錯(cuò)誤了: 如果是tp中的類(lèi) *.class.php 文件,一定要在文件的開(kāi)頭 寫(xiě)上 <?php ... 否則系統(tǒng)不會(huì)認(rèn)為這是 一個(gè)php文件, 因此不會(huì)認(rèn)為其中的class...是一個(gè)類(lèi),所以會(huì)報(bào)錯(cuò): 實(shí)例化一個(gè)不存在 的類(lèi). 在windows下的編輯器還不會(huì)顯示代碼顏色高亮, 但是在shell中你就不容易發(fā)現(xiàn)了,所以一定要記得寫(xiě)php標(biāo)簽. 這個(gè)跟c++文件不一樣:c++文件是不需要開(kāi)始標(biāo)簽的, 可以直接寫(xiě)code.. . 所以要注意他們的區(qū)別!
php的結(jié)束標(biāo)簽 在手冊(cè)中,是強(qiáng)烈建議不要加的: 因?yàn)榻Y(jié)束標(biāo)簽 后的任何空格都可能引起很蛋疼 的錯(cuò)誤. 如果是要被別人包含的時(shí)候,只是在結(jié)束時(shí)加上結(jié)束注釋.
要解決路徑問(wèn)題, 最簡(jiǎn)單的方法是把 自定義標(biāo)簽庫(kù)放到 跟 內(nèi)置標(biāo)簽庫(kù) Cx.class.php一樣的位置. 然后只配置兩個(gè)配置項(xiàng): 'TAGLIB_PRE_LOAD' => 'my' 'TAGLIB_BUILT_IN' => 'cx,my'
而'APP_AUTOLOAD_PATH' => ''.在3.2.3中已經(jīng)被廢棄,因?yàn)樗P(guān)閉namespace, 'APP_USE_NAMESPACE' => false, 但是一旦關(guān)閉,所有點(diǎn)控制器都會(huì)失效!
而且 My.class.php 自定義標(biāo)簽庫(kù)好像也不用命名為 TagLibMy.class.php.?!
最終總結(jié): 解決方案
(當(dāng)然你也可以寫(xiě)TagLibMy.class.php, 類(lèi)也定義成TagLibMy,以及配置文件做相應(yīng)修改都是可以的, 只是沒(méi)有必要搞得那么復(fù)雜)
轉(zhuǎn)載于:https://www.cnblogs.com/bkylee/p/6096873.html
總結(jié)
以上是生活随笔為你收集整理的thinkphp自定义标签库的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 从网站上下载视频
- 下一篇: 【php】命名空间 和 自动加载的关系