是否有一个php解析器来获取emmet样式的markdown代码并将其解析为html?
我发现自己编写的代码就像。
$htmlBlock .= '<div id="'.$myDivId.'">';
$htmlBlock .= '<ul>';
foreach( $myArray as $listItem){
$htmlBlock .= '<li>' . $listItem . '</li>';
}
$htmlBlock .= '</ul>';
$htmlBlock .= '</div>';
echo $htmlBlock;
通过一些嵌套,条件,属性和类,它变得非常繁琐和复杂。最糟糕的部分是记住关闭标签并计算何时需要关闭标签。
我熟悉HEREDOC但是嵌套循环和条件语也会变得非常混乱。我想完全避免使用标签和HTML语法。事实上,我甚至为写作而感到疯狂。
那些熟悉emmet的人知道
#page>div.logo+ul#navigation>li*5>a{Item $}
将解析为
<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 li{$myArray}
即使能写这个也很可爱。
$emmet = #$myDivId ul
$emmet .= foreach ($myArray as $listItem) li{$listItem}
我看到很多用于php的降价解析器,Parsedown看起来很酷,但我不想学习另一种语言。我喜欢用简写语法输出html。
看起来像手写笔,sass,并且在css中解决了问题,但html却被遗忘了。这对我来说太神奇了,因为HTML更加冗长。
我觉得理想的解决方案是一个允许变量的php emmet解析器。有谁知道吗?如果没有,我将开始Github回购并开始工作。
答案 0 :(得分:0)
答案 1 :(得分:0)
这是一个可能对你有用的作曲家包,它说它是受HTML脚本启发的html渲染,并具有类似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>
据说无论如何!我还没有用过这个,但我肯定会参加下一个项目。希望这有帮助!
答案 2 :(得分:-2)
https://github.com/artemBilik/emmet
用法'div&gt; p.myP {some text} + p#myPersonalP {another text}
和javascript一样