3

我想在我的 nanoc 网站上制作一个联系表格,我需要在我的.haml文件中放置一些 php 代码 - 有什么方法(过滤器可能吗?)可以轻松实现这一点,或者我必须将整个页面保存为.php(并使用标准 html语法而不是haml?)。

或者可能有纯 Ruby 解决方案(托管在 github 上可以实现?)

请帮忙!

4

2 回答 2

4

您可以使用 :plain 过滤器来保留 php,它不会解析过滤后的文本。当您保留多行 php 时,这很有用。

前任:

:plain
  <?php foreach ($es as $e) {
    echo $e;
  } ?>
于 2013-01-29T03:19:04.323 回答
4

Haml 3.2 即将发布(rc3 刚刚发布),并且应该有一个新的haml-contribgem 随之发布。haml-contrib有一个PHP 过滤器,可能是您正在寻找的。

php 过滤器的文档注释说:

# A PHP Filter for Haml. This simply wraps code inside <?php ?> tags. While this
# may seem like a strange idea, some people use Haml to generate mostly static
# HTML documents that then include small amounts of PHP.
#
# This code also serves as an example of how to implement a simple filter for
# Haml.

它实际上并没有比Kevin Granger 回答:plain中的过滤器做得更多,但可能会使事情变得更容易。

一个例子:

$ cat php.haml 
:php
  foreach ($es as $e) {
    echo $e;
  }
$ haml -rhaml/filters/php php.haml 
<?php
  foreach ($es as $e) {
    echo $e;
  }
?>
于 2013-01-29T05:28:58.280 回答