INCLUDE¶
当遇到此指令时,立即分析到包含文件的开关。因此,所包含的文件可以由任何有效的mapfile语法组成。例如:
INCLUDE 'myLayer.map'
由于使用有限,性能似乎不会受到严重影响,但是在高性能实例中,您可能希望在预处理步骤中使用include来构建生产 Mapfile 。C预处理器也可以使用(尽管语法不同),而且功能更强大。
笔记¶
支持4.10及更高版本。
要包含的文件名 MUST be quoted (单引号或双引号)。
Includes 可以嵌套,最多可5层。
文件位置可以作为文件的完整路径,也可以(在MapServer中>=4.10.1)作为相对于 Mapfile 的路径。
调试可能有问题,因为:
发生错误的文件无法向用户输出
没有为每个文件重置行号计数器。以下是在找不到包含文件时引发的一个可能错误:
msyylex(): Unable to access file. Error opening included file "parks_include.map"
例子¶
MAP
NAME "include_mapfile"
EXTENT 0 0 500 500
SIZE 250 250
INCLUDE "test_include_symbols.map"
INCLUDE "test_include_layer.map"
END
其中测试包括符号。地图包含:
SYMBOL
NAME 'square'
TYPE VECTOR
FILLED TRUE
POINTS 0 0 0 1 1 1 1 0 0 0 END
END
测试包括图层。地图包含:
LAYER
TYPE POINT
STATUS DEFAULT
FEATURE
POINTS 10 10 40 20 300 300 400 10 10 400 END
END
CLASS
NAME 'Church'
COLOR 0 0 0
SYMBOL 'square'
SIZE 7
STYLE
SYMBOL "square"
SIZE 5
COLOR 255 255 255
END
STYLE
SYMBOL "square"
SIZE 3
COLOR 0 0 255
END
END
END