HTML 템플릿PHP에서 이와 같은 템플릿을 구문 분석하는 효율적인 방법은 무엇입니까?
<b><!--{NAME}--></b>
...
..
..
<b><!--{ADDRESS}--></b>
PHP의 배열
array('name'=>'my full name', ..... , 'address'=>'some address ');
내가 템플릿 파일을 많이 가지고 있고 그들 각각을 분석하고 연관 배열에에게없는 str_replace 주어진 데이터를 대체해야합니다.
정적 기능 ParseTemplate 코드의 현재 버전 ($ 데이터, $ 템플릿) {
:나는
편집 도움이 될 수있는이 과정 또는 기타 기술/도구를 개선하기 위해 귀하의 제안이 필요
$html=$read==true ? self::GetCached($template,true) : $template ; foreach($data as $key=>$value){ if(is_array($value)){ foreach($data[$key] as $aval) $html = str_replace("<!--{".$key."}-->",$aval,$html); } else $html = str_replace("<!--{".$key."}-->",$value,$html); } return $html;
}
감사
성능이 중요한 경우foreach ($array as $key => $value) {
$html = str_replace("<!--{$key}-->", $value, $html)
}
이는 HTML에 strpos를 사용하고 가서 더 좋을 수 있습니다
여기, 템플릿 엔진과 같은 Mustache를 사용하지 않는 이유 : //github.com/bobthecow/mustache.php#readme –
@tuxtimo, plz 편집을 확인 – sakhunzai
@JonathandeM. 당신의 제안에 감사드립니다 :) 그들은 유망한 것으로 보입니다 – sakhunzai