Передача параметров в GET-запросе при обращении к map-файлу позволяет получить более гибкое управление над результатами его работы при работе MapServer.
Я сейчас приведу пример, как передать и обработать в expression, к примеру, скорость движения авто.
Передача параметра, надеюсь, ни у кого не вызовет затруднений — поэтому просто приведу пример части map-файла.
LAYER
. . . . . . . .
VALIDATION
. . . . . . . .
"speed" "^[0-9]+$"
. . . . . . . .
END
. . . . . . . .
CLASS
EXPRESSION ([speed] < %speed%)
STYLE
COLOR 28 130 0
WIDTH 3
END
END
CLASS
EXPRESSION ([speed] > %speed%)
STYLE
COLOR 219 52 49
WIDTH 3
END
END
END
Здесь стоит обратить внимание на два момента. Во-первых, параметры, пришедшие нам в GET — следует отвалидировать — это делается на основании регулярного выражения в секции VALIDATION. В примере выше приведен элементарный пример валидации чисел.
После этого параметр доступен в синтаксисе %PRM_NAME% и может быть использован именно в блоке EXPRESSION или FILTER.