Nanoc 的 HAML 代码中的 PHP 代码过滤器

标签 php syntax haml contact-form nanoc

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

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

请帮忙!

最佳答案

Haml 3.2 即将发布(rc3 刚刚是 released ),应该会有一个新的 haml-contrib gem 与它一起发布。 haml-contrib有一个PHP filter这可能就是您正在寻找的。

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.

它并没有比 :plain 做得更多在 Kevin Granger’s answer 中过滤,但可能会使事情稍微容易一些。

一个例子:

$ cat php.haml 
:php
  foreach ($es as $e) {
    echo $e;
  }
$ haml -rhaml/filters/php php.haml 
<?php
  foreach ($es as $e) {
    echo $e;
  }
?>

关于Nanoc 的 HAML 代码中的 PHP 代码过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14130254/

相关文章:

php - 左连接返回空结果集

php - 获取格式错误的 JSON : Unexpected '?' in mysqli_fetch_row result

python - 如何对类中的多个方法设置偏差?

sql - 有没有办法将 DBCC CheckIdent 的值存储到变量中?

Javascript for 循环而不重新计算数组的长度

ruby-on-rails - 在 Haml::Engine 中使用 Rails 方法

ruby-on-rails - If 语句中额外的 Ruby 行会导致 Haml 出现问题吗?

javascript - magento订单状态自动更新触发器或事件

php - 在 Magento 中清理日志后出错

javascript - JQuery click 只记录第一次点击,不记录后续点击