habanero/puke

此包已被废弃且不再维护。没有建议的替代包。
关于此包最新版本(v0.2)没有可用的许可信息。

基于 Lambda 的 PHP 模板系统

v0.2 2012-12-29 12:50 UTC

This package is auto-updated.

Last update: 2020-01-29 20:55:51 UTC


README

很多年前,CoffeeKup诞生了,我们现在有很多模板引擎。

好吧,我只是因为“为什么不?”而做了这个,实际上它受到了Markaby模式的启发,但在PHP上并不那么性感。

当然,应该使用Composer将其作为依赖项安装。

基本用法

显示你喜欢的书籍。

<?php

require 'vendor/autoload.php';

$data = [
  [
    'author' => 'Hernando de Soto',
    'title' => 'The Mystery of Capitalism'
  ],
  [
    'author' => 'Henry Hazlitt',
    'title' => 'Economics in One Lesson'
  ],
  [
    'author' => 'Milton Friedman',
    'title' => 'Free to Choose'
  ],
];

# painless
$view = function () {
  if ($books) {
    table(function () {
      tr(function () {
        th('Author');
        th('Title');
      });
      foreach ($books as $key => $val) {
        tr(function () {
          td($val['author']);
          td($val['title']);
        });
      }
    });
  } else {
    p('There are no books to display.');
  }
};

# or using a clean render() helper...
echo Puke\Base::render($view, ['books' => $data]);

# now try this
p('funny');

请注意,简单的echo将不会像通常那样工作,请在模板中使用text()辅助函数来实现相同的结果。

Eval很邪恶,但在这里它是王。

最后

没有太多要说的话,如果你想贡献,欢迎你的加入。