|
ОператорыРассмотрим возможности SSI как скриптового языка. Переменные. Присвоение значений переменным в SSI осуществляется с помощью команды #set var value:
<!--#set var="msg" value="Hallo " -->
Вывести значение переменной можно с помощью #echo var:
<!--#echo var="msg" -->
В качестве переменных можно использовать переменные окружения. При подстановке значения переменной внутри директив SSI перед именем переменной необходимо ставить символ $ (доллар). Для предотворащения двумысленности можно заключить имя переменной в фигурные скобки {}. Например, <!--#set var="msg2" value="${msg} World!" --> присвоит переменной msg2 значение "Hallo World!". Следующий пример отображает некоторую информацию по текущей странице:
Информация о текущей странице.
Адрес: http://<!--#echo var="HTTP_HOST" --><!--#echo var="REQUEST_URI" --> Размер файла: <!--#fsize file="$DOCUMENT_NAME" --> Дата обновления: <!--#flastmod file="$DOCUMENT_NAME" --> Условные операторы. Базовой структурой для описания условного оператора является:
<!--#if expr="condition" -->
<!--#elif expr="condition" --> <!--#else --> <!--#endif --> Элементы #elif и #else не являются обязательными. Условие condition могут быть следующими: сравнение str1 = str2 (равно), str1 != str2 (не равно), str1 < str2 (меньше), str1 > str2 (больше), str1 <= str2 (меньше или равно), str1 >= str2 (больше или равно); str (истинно, если str не пустая строка). Если str2 записано в виде /str/, то строка интерпретируется как регулярное выражение. Также можно использовать логические отношения: && (логическое И), || (логическое ИЛИ), ! (логическое отрицание). Продемонстрируем использование условных операторов на примере определения браузера пользователя:
Ваш браузер
<!--#if expr="$HTTP_USER_AGENT=/Opera/" --> Opera <!--#elif expr="$HTTP_USER_AGENT=/MSIE/" --> Microsoft Internet Explorer <!--#elif expr="$HTTP_USER_AGENT=/Netscape/" --> Netscape <!--#elif expr="$HTTP_USER_AGENT=/Firefox/" --> Firefox <!--#else --> не определен. <!--#endif --> |
|