目录结构
	文档位于app/data/doc/api目录下，所有文档必须是UTF8格式，有无BOM均可，接口文档必须以.txt结尾。
	文件名可以用数字加英文句号排序，展示的时候这个数字会被忽略。
	_meta.txt多目录可继承，文件从外到内优先级由低到高。
	目录结构任意，深度任意，目录中必须存在一级版本号。

关键字
	键(通配符描述)
		_meta
		_unset
		\s*
		[]*
		\h
		doc		有doc就会忽略除title外的其他字段
	值(正则描述)
		\t
		\\k
		\\d\d
		\\i
	文件
		_meta.txt
		_inc
	变量
		{$key}		key需要替换为具体的键,doc中自己的var优先级高于php传递过来的变量
		
文档格式
	以tab作为间隔，tab可以连续多个，最后解析为多维数组，每缩进一级代表增加一级数组维度。
	第一列作为建，后面列作为值，不包含键如果列数大于2则值为数组，如果第一列以[]开头表示此列不作为键。
	数字键数组合并的时候不会覆盖，后面的数字键会在之前最大数的基础上累加，数字键加前缀\s可以避免这种情况。
	文档中的顶层主键可以使用\k代替。
	接口可以自继承，比如引用文档中的其他节点，键使用\h实现，值是数组的键用TAB分隔。
	主流语言都支持heredoc，系统使用的heredoc使用<<<和>>>区分，内部处理使用\\d\d作为替换符。
	支持包含外部文件，使用\i作为替换符，后面紧跟文件名，会在当前目录的_inc目录查找文件。
	_meta说明：
		default	作为默认值被具体文档以低优先级递归合并。
		prefix	作为前缀与具体文档递归合并。
		suffix	作为后缀与具体文档递归合并。
		wraper	作为wraper与具体文档递归合并，替换内容为{key}，key为具体的键。
		var		doc中的自定义变量
		inherit	继承其他文件，使用相对路径，后面可以跟接口根键指定继承的接口，可以多层继承！
	_unset说明：
		根据键删除合并结果中的特定值，和_meta一样在顶层定义，只_unset上一级继承的内容。

附录：
	JSON数据类型
	一、4种基本类型 
		字符串(string)		如:"a"
		数字(number)		如:1，1.02
		布尔型(boolean)		true或false
		Null值(null)		null
	二、两种结构类型
		对象(object)	{"name":"zhangsan","age":18}	键为String ，值为Json的任意数据类型之一。对象的键值对是无序的。
		数组(array)		[1,2,3]							顺序排列的零个或多个Json数据类型