phpcms里面的變量、數組命名規范已經做得非常規范了,但是,由于開發團隊成員畢竟良莠不齊,或許因為其他原因造成我們對其中一些變量、數組等會產生誤解,合肥笑緣信息技術有限公司專業做合肥網站建設,寫此文章一做筆記,二給后來學習的人減少一些學習上繞的彎路,閑話少說,開始正題.
$arrchild_arr 數組,保存當前欄目下所有的子欄目,var_dump($arrchild_arr)的結果為:
- array
- 0 => string '21' (length=2)
- 1 => string '5' (length=1)
- 2 => string '6' (length=1)
其中,鍵0,1,2是數組的序號,值21、5、6就是子欄目的catid咯,$child 變量、布爾,若當前欄目存在子欄目,值為1,否則為0.這個沒啥好說的
來個坑爹級的:$arrchildid 變量,返回子欄目的catid,并且包含自身的catid.
第一個值是自身的catid,從第二個值開始是子欄目的catid.
注意:這是一個坑爹級的變量.
此話怎講?你看這個$arrchildid是不是以為它是個數組?那你就錯了!他是個字符串類型的變量!
- var_dump($arrchildid);
- string '4,21,5,6' (length=8)
- //Vevb.com
坑爹啊,第一個值4是當前欄目自己的catid,從21開始,都是子欄目的id,那我們怎么去用呢?一般是用數組來操作比較方便.
下面用一個例子來說明一下,這個例子實現這樣一個功能,如果當前欄目存在子欄目,則跳轉到其第一個子欄目,我們都知道phpcms功能很強大,但是它有個臭名昭著的漏洞,就是當你的欄目下面存在子欄目的時候,點進欄目之后不會調到子欄目,尤其在單網頁上,這種漏洞讓人很抓狂,這個例子就可以很好的解決這個問題.
- <?php
- if($child){
- </span>$myarrchild=explode(',',$arrchildid);
- </span>$myurl=$CATEGORYS[$mychildarr[1]][url];
- </span>header("location:$myurl");
- }
- ?>
新聞熱點
疑難解答