我正在尝试找到一个可用于以编程方式生成标记的工具(非irl字)。这是我在伪代码中试图完成的一个例子......
$htmlDoc = new HTML_Document();
$htmlDoc->setTitle('Cool Title');
$htmlDoc->addJs('some_js_file.js');
$htmlDoc->addStylesheet('some_css_file.css');
$divElement = new HTML_Element_Div();
$htmlDoc->append('body', $divElement);
$output = $htmlDoc->generate();
最好的工具是什么?
答案 0 :(得分:5)
我正在开发一个解决这个常见任务的简单DSL。它被称为 htmlgen ,它正在Github上托管。
我刚推动2.x进行了一些重大改进。
这是一个例子
use function htmlgen\html as h;
h('#wrapper',
h('h1.title', 'Hello, World'),
h('p',
h('comment', 'link to project'),
h('a', ['href'=>'https://github.com/naomik/htmlgen'], 'See htmlgen on Github')
)
);
这是输出(实际输出没有空格)
<div id="wrapper">
<h1 class="title">Hello, World</h1>
<p>
<!-- link to project -->
<a href="https://github.com/naomik/htmlgen">See htmlgen on Github</a>
</p>
</div>
这是非常新的,但在200行源,它已经非常强大。把它分叉并进行调整或给我一个带有建议的说明。
答案 1 :(得分:3)
PHP中标配了一个标准:http://php.net/manual/en/book.dom.php
下进行。
答案 2 :(得分:2)
编写自己的简单框架非常简单,是一种很棒的学习体验。你可以在一两个小时内实现这一点,事实上我只是在几周前才对最近的一个项目做过。
我建议的是:
答案 3 :(得分:1)
我不知道这样的库,但是编写一个库很容易,例如,基于XMLWriter。
那就是说,值得注意的是,php专门用于避免这样的事情。我建议使用模板引擎,甚至是用于html输出的'纯'php。