crodas / artifex
此包的最新版本(0.5.6)没有可用的许可信息。
宏的强化版。生成代码的最简单方法。
0.5.6
2013-10-28 01:17 UTC
Requires
- php: >=5.3.0
README
Artifex 是一个 PHP 的 预处理器。它旨在以非常简单直观的方式生成 PHP 代码。
语法
Artifex 语法深受 C 预处理器的启发,但它们不是从 #
(在 PHP 中是注释)开始,而是从 #*
开始。
#* $foo = $foo + 1
Artifex 还以方便的方式支持多行。
#* # $foo = $foo + 2 # $bar = $foo + $foo->xxx();
为了替换一个值,它必须被 __
包围,例如
<?php #* $foo = rand() function getRandomOnce() { return __foo__; } #* $foo = {'foo': 'bar'} function getArray() { return __@foo__; }
语法深受 PHP 启发,尽管有一些差异
- 分号不是必需的(它们是可选的)。
- 任何未分配的字符串都将被打印出来。
#* "hello there"
等于#* print("hello there")
- 花括号是无效的,而是有一个通用的
end
标记来指示块结束的位置 - 以
@
字符开头的变量意味着我们想要表示其值(与调用var_exports
相同)。 - 它支持 json。
迭代器
到目前为止,Artifex 支持 foreach
<?php class __foo__ { #* foreach(['foo', 'bar'] as $id => $name) function get__name__() { return "I'm a the getter of __id__ => __name__"; } #* end }