<?php class Parser { private $_tpl; public function __construct($_tplFile) { if (! $this->_tpl = file_get_contents($_tplFile)) { exit('ERROR:模版文件读取错误'); } } private function parvar() { $_patten = '/<!--\s+\{$([\w]+)\}\s+-->/'; if (preg_match($_patten,$this->_tpl)) { $this->_tpl = preg_replace($_patten, "<?php echo $this->_vars[''];?>",$this->_tpl); } } private function parif(){ $_pattenif = '/<!--\s+\{if\s+$([\w]+)\}\s+-->/'; $_pattenElse = '/<!--\s+\{else\}\s+-->/'; $_pattenEndif = '/<!--\s+\{\/if\}\s+-->/'; if (preg_match($_pattenif,$this->_tpl)) { if (preg_match($_pattenEndif,$this->_tpl)) { $this->_tpl = preg_replace($_pattenif,"<?php if ($this->_vars['']){?>",$this->_tpl); $this->_tpl = preg_replace($_pattenEndif,"<?php } ?>",$this->_tpl); if (preg_match($_pattenElse,$this->_tpl)) { $this->_tpl = preg_replace($_pattenElse,"<?php }else{?>",$this->_tpl); } }else{ echo 'ERROR:IF语句没有关闭!'; } } }
템플릿 파일의 내용을 받은 후 메서드를 구성하고, 템플릿 파일 내용을 얻어서 구문 분석하고, 일반 변수를 사용하여 IF 문을 구문 분석한 다음 템플릿 파일을 구문 분석하여 컴파일된 파일을 생성합니다.
이 사이트의 모든 리소스는 네티즌이 제공하거나 주요 다운로드 사이트에서 재인쇄되었습니다. 소프트웨어의 무결성을 직접 확인하십시오! 이 사이트의 모든 리소스는 학습 참고용으로만 사용됩니다. 상업적 목적으로 사용하지 마시기 바랍니다. 그렇지 않으면 모든 결과에 대한 책임은 귀하에게 있습니다! 침해가 있는 경우 당사에 연락하여 삭제하시기 바랍니다. 연락처: admin@php.cn
관련 기사
![템플릿 템플릿 매개변수에서 Z와 클래스 Z의 차이점은 무엇입니까?](https://img.php.cn/upload/article/001/246/273/173055963017962.jpg)
02 Nov 2024
템플릿 템플릿 매개변수템플릿 템플릿 매개변수는 더 높은 수준의 추상화 및 코드를 허용하는 C의 강력한 기능입니다.
29 Jul 2016
discuz 템플릿: discuz 템플릿 Discuz 템플릿 엔진 캡슐화 클래스 코드: 주요 기능 설명 제거 Discuz 언어 패키지 기능 이식 Discuz 템플릿의 모든 기능에는 자동 업데이트 캐시 및 라이프 사이클 기능이 추가됩니다. 템플릿에서의 사용 방법은 템플릿과 동일합니다. Discuz.그러므로 불필요한 설명은 하지 않겠습니다.discus즈의 언어팩 기능을 사용하려면 template.class.php의 172번째 줄에 있는 주석을 제거하고 추가하면 됩니다. template.func.php 및 discuz 원본 언어
![클래스 템플릿의 클래스 이름은 템플릿 매개변수 없이 어떻게 작동합니까?](https://img.php.cn/upload/article/001/246/273/173034639222149.jpg)
31 Oct 2024
템플릿 매개변수가 없는 클래스 템플릿의 클래스 이름다음과 같이 정의된 클래스 템플릿을 고려하십시오.template class Link {...
![](/static/imghw/down_right.png)
![](/static/imghw/taglogo.png)
Hot Tools
![종속성 주입 컨테이너용 PHP 라이브러리](https://img.php.cn/upload/manual/000/000/001/5e2171bf3c005481.png)
종속성 주입 컨테이너용 PHP 라이브러리
종속성 주입 컨테이너용 PHP 라이브러리
50개의 뛰어난 클래식 PHP 알고리즘 모음
클래식 PHP 알고리즘, 훌륭한 아이디어를 배우고 사고력을 확장하세요
이미지 최적화를 위한 작은 PHP 라이브러리
이미지 최적화를 위한 작은 PHP 라이브러리
![](/static/imghw/taglogo.png)