|
м, что выведется опять та же самая строка. Но задумаемся: как PHP
узна-
ет, имели ли мы в виду переменную $a или же переменную $ao? Очевидно, никак.
Запустив фрагмент, убеждаемся, что он генерирует сообщение о том, что
переменная
$ao не определена. Как же быть? А вот как:
$a="Hell"; // слово Hello без буквы "o"
echo $a."o world!"; // один способ
echo "{$a}o world!"; // другой способ
echo "${a}o world!"; // третий способ!
Мы видим, что существует целых три способа преодолеть проблему. Каким из них
воспользоваться — дело ваше. Мне больше нравится вариант с {$a}, хотя он и вве-
ден в PHP лишь недавно.
Последний пример показывает, что в некоторых контекстах и фигурные скобки
могут трактоваться как спецсимволы.
Here-документ
В четвертой версии PHP появился и еще один способ записи строковых констант,
ко-
торый исторически называется here-документом (встроенный документ). Фактически
он представляет собой альтернативу для записи многострочных констант. Выглядит
это примерно так:
$a=<<тэгами — этот пример НЕ работает!
EOD;
Надеюсь, в будущем разработчики PHP изменят ситуацию к лучшему, но пока они
этого не сделали.
Вызов внешней программы
Последняя строковая "константа" — строка в обратных апострофах (например, `ко-
манда`), заставляет PHP выполнить команду операционной системы и то, что она
вы-
вела, подставить на место строки в обратных апострофах. Вот так, например, мы
мо-
жем в системе Windows узнать содержимое текущего каталога, которое выдает
команда dir:
$st=`dir`;
echo "$st ";
Впрочем, если в настройках PHP установлен так называемый безопасный режим,
который ограничивает возможность запуска внешних программ лишь некоторыми,
указанная команда может и не сработать. Мы еще вернемся к запуску программ в
следующей части этой книги.
Операции
На самом деле, к этому моменту вы уже знакомы практически со всеми операциями
над переменными и выражениями в PHP. И все же я приведу здесь их полный список
с краткими комментариями, заменяя выражения-операнды буквами a и b.
В большинстве публикаций, как только разговор заходит о выражениях и опе-
рациях, проводят громоздкую и неуклюжую таблицу приоритетов (порядка дей-
ствий) и ассоциативности операторов. Пожалуй, я воздержусь от такой практи-
ки (ввиду ее крайней ненаглядности) и отошлю интересующихся к
официальной документации по PHP. Вместо этого я посоветую вам везде, где
возможна хоть малейшая неоднозначность, использовать скобки.
Арифметические операции
r a + b — сложение
r a — b — вычитание
r a * b — умножение
r a / b — деление
r a % b — остаток от деления a на b
Часть III. Основы языка PHP 136
Операция деления
|
|