ThinkpHP 탭 제작 실례 설명
Lib/Template/TagLib/TagLibCx.class
에 있 습 니 다.자주 사용 하 는 volist phop 등 thinkphp 태그 가 정의 되 어 있 습 니 다.
여기 서 필 자 는 이 클래스 에
탭 형식:
<category parentid='0' ><{$cat.catname}></category>
태그 기능:부모 클래스 id 를 반복 출력 하 는 것 은 parentid 의 항목 입 니 다.
1.tagLibCx.class 의 개인 속성 에 추가
'category'=array('attr'=>'parentid',level=>3)
그 중에서 attr:태그 의 속성 level 태그 의 끼 워 넣 기 단계
2.해석 함수 추가
라벨 의 해석 원 리 는 xml 파일 을 읽 어서 해당 하 는 정 보 를 얻 은 다음 에 필요 한 것 을 맞 추 는 것 입 니 다.
php 소스 코드,마지막 으로 echo 를 통 해 페이지 에 출력
구체 적 인 코드 는 다음 과 같다.
public function _category($attr,$content)
{
// $tag
$tag = $this->parseXmlAttr($attr,'category');
//
$parentid= $tag['parentid'];
//
$result = !empty($tag['result'])?$tag['result']:'cat'; //
$key = !empty($tag['key'])?$tag['key']:'i';
$mod = isset($tag['mod'])?$tag['mod']:'2';
// CategoryModel
$sql = "D('Category')->";
$sql .= "getCategorys(".$parentid.')';
//
$parsestr = '<?php $_result='.$sql.'; if ($_result): $'.$key.'=0;';
$parsestr .= 'foreach($_result as $key=>$'.$result.'):';
$parsestr .= '++$'.$key.';$mod = ($'.$key.' % '.$mod.' );?>';
$parsestr .= $content;// category
$parsestr .= '<?php endforeach; endif;?>';
return $parsestr;
}
CategoryModel getCategorys
/*
* parentid
* $parentid id
* $withSelf
*/
public function getCategorys($parentid,$withSelf=0)
{
$parentid=intval($parentid);
$categorys=$this->where(array('parentid'=>$parentid,'ismenu'=>1))->order('listorder ASC')->select();
//
if($withSelf)
{
$categorys2=$this->where(array('id'=>$parentid,'ismenu'=>1))->limit(1)->select();
$category=array_merge($categorys,$categorys2);
}
return $categorys;
}
3.페이지 의 인용<category parentid='0'><{$cat.catname}></category>
이라는 태그 만 있 으 면 됩 니 다^ ^!그 volist 를 떼 어 내 고 우리 가 원 하 는 것 을 페이지 에서 동적 으로 출력 할 수 있 습 니 다.ThinkpHP 의 태그 제작 실례 에 대한 설명 은 여기까지 입 니 다.ThinkpHP 의 태그 제작 내용 에 대해 서 는 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 읽 어 주시 기 바 랍 니 다.앞으로 도 많은 응원 부 탁 드 리 겠 습 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
ThinkPHP의 도메인 간 공유 세션한동안 의 연구 를 거쳐 마침내 돌파구 를 이루었다 두 웹 사이트: think.local think2.local 주요 원리는 다음과 같습니다. 1、think에서 통과.local 실행 js 스크립트,think2.loc...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.