2014-11-07 2 views
1

emmet 스타일 마크 다운 코드를 가져 와서 HTML로 파싱하는 PHP 파서가 있습니까?PHP 용 Emmet 파서

나는 코드를 작성하는 것처럼 보입니다.

$htmlBlock .= '<div id="'.$myDivId.'">'; 
$htmlBlock .= '<ul>'; 
foreach($myArray as $listItem){ 
    $htmlBlock .= '<li>' . $listItem . '</li>'; 
} 
$htmlBlock .= '</ul>'; 
$htmlBlock .= '</div>'; 
echo $htmlBlock; 

일부 중첩, 조건, 특성 및 클래스는 매우 지루하고 복잡합니다. 최악의 경우는 태그를 닫고 태그를 닫을 때를 계산하는 것을 기억하는 것입니다.

저는 HEREDOC에 익숙하지만 중첩 된 루프와 조건문을 사용하면 상당히 엉망이됩니다. 태그와 HTML 문법을 완전히 피하고 싶습니다. 사실이라면, 글쓰기조차도 미쳐 버립니다.

개미 잘 알고있는 자들은

#page>div.logo+ul#navigation>li*5>a{Item $} 

심지어되는

$emmet = #$myDivId ul li{$myArray} 

작성 훨씬 쉬울 것

<div id="page"> 
<div class="logo"></div> 
<ul id="navigation"> 
    <li><a href="">Item 1</a></li> 
    <li><a href="">Item 2</a></li> 
    <li><a href="">Item 3</a></li> 
    <li><a href="">Item 4</a></li> 
    <li><a href="">Item 5</a></li> 
</ul> 

으로 분석 것이라는 점을 알고있다 할 수있다 이것을 쓰면 꽤 멋질 것입니다.

$emmet = #$myDivId ul 
$emmet .= foreach ($myArray as $listItem) li{$listItem} 
내가 PHP를위한 인하 파서을 많이 볼

Parsedown 멋진 외모,하지만 난 다른 언어를 배울 필요가 싶지 않아요. 나는 속기 구문으로 HTML을 출력하는 것을 좋아한다.

CSS에서 문제가있는 스타일러스, 싫증이 나는 것 같지 않지만 html을 잊어 버렸습니다. HTML이 훨씬 더 장황하기 때문에 어느 것이 놀랍습니까?

이상적인 솔루션은 변수를 허용하는 PHP emmet 파서가 될 것 같습니다. 누구 하나 알고 있나요? 그렇지 않다면, 나는 Github repo를 시작하고 일하러 갈 것입니다.

+0

하는 히어 닥의 당신에게 힘든 시간을주는 경우에, 당신이 시도 않았다 [** nowdoc **] (http://php.net/manual/en/language.types.string.php#language.types .string.syntax.nowdoc)? 그 일을하는 것처럼 보입니다. –

+0

실제로 Heredoc은 제 용도로 더 좋습니다. 하지만 어쨌든 약식 구문을 사용하고 싶습니다. – Bryan

+0

HAML을 (를) 들여다보고 싶을 수도 있습니다 ... – mb21

답변

0
에 대해 동일

여기는 당신을 위해 일할 작곡가 패키지입니다, 그것은 html에 의해 영감을 PHP에서 HTML 렌더링 말합니다 yperscript와 같은 기능을 emmet 있습니다.

https://github.com/spatie/html-element

이 코드는 :

el('div.container > div.row > div.col-md-6', 'Hello world!')); 

이 렌더링됩니다

<div class="container"> 
    <div class="row"> 
    <div class="col-md-6"> 
    Hello world! 
    </div> 
    </div> 
</div> 

기발한를 어쨌든! 나는 이것을 아직 사용하지 않았지만 다음 프로젝트에 대해서는 분명히 할 것이다. 희망이 도움이!

https://github.com/spatie/html-element