САМОУЧИТЕЛЬ PHP 4



         

Конструкции языка - часть 3


Вот, например, как будет выглядеть наш старый знакомый сценарий, который приветствует пользователя по имени, с использованием альтернативного синтаксиса if-else (листинг 9.1):

Листинг 9.1. Альтернативный синтаксис if-else

<?if(@$go):?>

  Ïðèâåò, <?=$name?>!

<?else:?>

  <form action=<?=$REQUEST_URI?> method=post>

  Âàøå èìÿ: <input type=text name=name><br>

  <input type=submit name=go value="Îòîñëàòü!">

<?endif?>

Согласитесь, что даже человек, совершенно не знакомый с PHP, но зато хорошо разбирающийся в HTML, легко сможет додуматься, что к чему в этом сценарии.

Цикл с предусловием while

Эта конструкция также унаследована непосредственно от Си. Ее предназначение — цикличное выполнение команд в теле цикла, включающее предварительную проверку, нужно ли это делать (истинно ли логическое выражение в заголовке). Если не нужно (выражение ложно), то конструкция заканчивает свою работу, иначе выполняет очередную итерацию и начинает все сначала. Выглядит цикл так:

while(ëîãè÷åñêîå_âûðàæåíèå)

  èíñòðóêöèÿ;

где, как обычно, логическое_выражение — логическое выражение, а

инструкция — простая или составная инструкция тела цикла. (Очевидно, что внутри последнего должны производиться какие-то манипуляции, которые будут иногда изменять значение нашего выражения, иначе оператор зациклится. Это может быть, например, простое увеличение некоего счетчика, участвующего в выражении, на единицу.) Если выражение с самого начала ложно, то цикл не выполнится ни разу. Например:

$i=1; $p=1;

while($i<32) {

  echo $p," ";

  $p=$p*2; // ìîæíî áûëî áû íàïèñàòü $p*=2




Содержание  Назад  Вперед