Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Уроки php для начинающих. Типы переменных. Управляющие конструкции. Примеры.


Здравствуйте, дорогие читатели!    Все вопросы и замечания присылайте на phpphp@mail.ru.

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

Для начала напишем программу, выполняющую некоторые полезные действия. Н-р, определяющую тип нашего браузера.

<?php
if (strstr($_SERVER["HTTP_USER_AGENT"], "MSIE")) {
    echo "Вы используете Internet Explorer<br />";
}
?>

 

Рассмотрим подробнее действия, выполняемые этой простой программой.

Оператор  if  проверяет условие ,  заключенное в круглые скобки. Если это условие выполняется, то далее выполняются операторы, заключенные в фигурные скобки.  Функция strstr() - встроенная в PHP функция, которая ищет одну строку в другой. В данном случае мы ищем строку "MSIE" в $_SERVER["HTTP_USER_AGENT"]  (HTTP_USER_AGENT - это переменная, в которой хранится информация о нашем браузере). Если строка не найдена, эта функция возвращает FALSE, если найдена - TRUE. Если она вернет TRUE, то условие в  if  окажется истинным, и код в командных скобках ({ }) выполнится. В противном случае данный код не выполняется.

Но, учитывая то, что в настоящее время распространено уже достаточно большое количество браузеров (не берусь назвать точное их количество J), проверкой одного условия нам не обойтись. Проверить на 2й браузер, н-р на Opera можно так:

<?php
if (strstr($_SERVER["HTTP_USER_AGENT"], "MSIE")) {
    echo "Вы используете Internet Explorer<br />";
}

if (strstr($_SERVER["HTTP_USER_AGENT"], "Opera")) {
    echo "Вы используете браузер Opera<br />";
}
?>

Т.е. мы "тупо" скопировали вышеприведенный пример, заменив во 2м операторе if проверку на вхождение в название браузера слова Opera. Теперь наша программа будет работать для 2х браузеров. Давайте ее перепишем несколько в другом виде:

<?php
if (strstr($_SERVER["HTTP_USER_AGENT"], "MSIE")) {
    echo "Вы используете Internet Explorer<br />";
}  elseif (strstr($_SERVER["HTTP_USER_AGENT"], "Opera")) {
    echo "Вы используете  браузер Opera<br />";
}  else echo "Вы используете неизвестный браузер" <br />";
?>

 

В данном случае у нас используется конструкция if - elseif - else .

Сначала происходит проверка на истинность условия (выражения), находящегося после if, если оно ложно, то проверяется условие после elseif, если и оно ложно, то выполняется оператор, находящийся после else (уже без проверки условий, просто "по факту", т.к. предыдущие проверки оказались ложными).

Проверить работу данной программы можно здесь.

Для более полного понимания работы оператора if нам нужно познакомиться с булевым типом переменных.  Т.е. оператор if имеет следующую структуру:

if (выражение) инструкция

Выражение вычисляется в булево значение. Если выражение принимает значение TRUE, PHP выполнит инструкцию, а если оно принимает значение FALSE - проигнорирует.

Булев (boolean)

Это простейший тип. Он выражает истинность значения - это может быть либо TRUE (Истина), либо FALSE (Ложь).

Чтобы определить булев тип, используйте ключевое слово TRUE или FALSE. Оба регистро -независимы.

Пример:

$foo True// присвоить $foo значение TRUE

( Двойной слэш //  - обозначает, что текст, находящийся справа от этих символов не является программой. Обычно используется для комментирования - пояснения смысла выполняемых действий, переменных и т.д.)

При преобразовании в логический тип, следующие значения рассматриваются как FALSE:

  • Сам булев FALSE
  •  целое 0 (ноль)
  • число с плавающей точкой 0.0 (ноль)
  • пустая строка и строка "0"
  • пустой массив
  • объект без атрибутов (только в PHP 4)
  • специальный тип NULL (включая неустановленные переменные)

Все остальные значения рассматриваются как TRUE

Булев относится к скалярным типам. Кроме него скалярными типами являются:

integer      Целые числа,                                   н-р     $a 1234// десятичное число

float       Числа с плавающей точкой,        н-р      $a 1.234;

string      Строки                                                н-р  $a 'это простая строка';

 

Подробнее с перечисленными типами переменных и с преобразованием их мы познакомимся на примерах в следующем выпуске.

 

До встречи!  Жду предложения и замечания.

Александр

phpphp@mail.ru.

 


В избранное