【问题标题】:Feasibility of HAML + PHP/CakePHPHAML + PHP/CakePHP 的可行性
【发布时间】:2010-12-21 13:01:03
【问题描述】:

是否有人使用像 phpHamlpHAML 这样的 PHP 的 HAML 实现?这两个项目在大约 2 年内都没有活动,并且都

有人对 CakePHP 的 Chaml 有经验吗?我玩过它,它似乎对空白非常挑剔,我认为这可能会在一个有许多开发人员的大型项目中引起一些麻烦。

我真的很想使用 HAML 或类似它的简约的东西,但我不希望它添加另一层调试问题。欢迎提出建议。

【问题讨论】:

    标签: php cakephp haml


    【解决方案1】:

    我的专长不是 HAML,而是 CakePHP,所以我只能回答你的部分问题。 CakePHP 是一个紧密耦合的框架,因此您可以使用它或反对它。如果您想使用不同的模板引擎,例如 HAML,您最好使用松散耦合的框架,例如 Code Igniter 或 Zend。

    有关更多信息,请参阅有关使用 Smarty in Code Igniter or Zend 的主题 - 使用 HAML 也适用相同的原则。

    【讨论】:

    • deceze 从他提供的答案的历史和他的声誉得分非常熟悉 cakephp。
    • 我刚刚注意到我确实忽略了原始问题中Chaml的存在,但是我的答案仍然是在松散耦合的框架中替换视图系统更可行。
    • 通过子类化 View 并在 AppController 中设置 var $view = 'MyView'; 来替换 Cake 中的 View 层真的没什么大不了的,因此这不是问题的重要部分。 :)
    【解决方案2】:

    哦,好吧,与此同时,我确实开始使用 Chaml 编写一个小型站点,它使用 phpHaml 解析器。首先:HAML 非常有趣! X-D

    第二:phpHaml 还是有一点问题。我遇到过这样的情况

    = $html->link('Something', '/somewhere')
    

    成功

    <?php echo $html->link('Something', '/somewhere'); ?><?php echo $html->link('Something', '/somewhere'); ?>
    

    如果以下行留空。在下一行插入一些东西删除了重复项。这意味着您始终需要仔细检查您实际上是在生成您认为的标记。

    Chaml 插件运行良好,我没有遇到任何特殊问题。包含的 SASS 解析器并不值得讨论,它充其量只是实验性的。

    总的来说,现阶段 PHP 上的 HAML 确实增加了一点调试开销,所以我不建议任何人都使用它。如果您不得不输入负载和标记负载,这可能是值得的。

    我目前正在尝试决定是深入使用 phpHaml 解析器还是切换到 Rails 是更好的决定。 ;)

    【讨论】:

      【解决方案3】:

      请参阅:http://haml-to-php.com/related%20work.html。这取决于您要使用多少 HAML 功能。他们中的大多数人都得到了简单的 HAML 权利。但是,如果您还想要引用和高级功能,例如 %div{:attr=>"foo_#{ php code }"} 我不知道除了 HAML-TO-PHP 之外的所有功能

      【讨论】:

        猜你喜欢
        • 2011-11-08
        • 2011-08-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-12-22
        • 2013-03-10
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多