Внимание! Практически весь материал этой лекции был в видеолекции. Если вы всё хорошо усвоили, просто пробегитесь глазами и переходите дальше.
Динамическая типизация
О динамической типизации вы уже слышали. Давайте разберемся на примерах, что это такое на самом деле.
Пусть у нас есть переменная $a, и ей присвоено некоторое значение. Мы выводим на экран значение и тип этой переменной.
<?php
$a = 1 + 1;
echo "1 + 1 is $a\n";
$typea = gettype($a);
echo "Type: $typea \n";?gt
результат работы программы:

Теперь напишем программу, в которой переменной $b также присваивается некоторое значение и определяется тип переменной. Обратите внимание: мы добавляем строки, а PHP автоматически превращает их в целые числа:
<?php
$b = "1" + "1";
echo "\"1\" + \"1\" is $b \n";
$typeb = gettype($b);
echo "Type: $typeb \n";
?>
результат:

В следующем примере сложим строку с целым числом. Результат записываем в переменную $c и определяем ее тип:
<?php
$c = "1" + 1;
echo "\"1\" + 1 is $c \n";
$typec = gettype($c);
echo "Type: $typec \n";
?>
результат:

PHP вновь преобразовал строку в целое число!
И, напоследок, запишем результат сложения двух символов в переменную $d и проверим, какой тип будет у результата:
<?php
$d = '1' + (double)'1';
echo "'1' + '1' is $d \n";
$typed = gettype($d);
echo "Type: $typed \n";
?>
результат:

Указав (double) перед вторым операндом, мы «заставили» PHP превратить его не в целое число, а в число с плавающей точкой. Вот почему в результате мы получили double.
Передача данных в PHP
Вы уже слышали, что в HTTP есть два основных способа передачи данных между клиентом и сервером: методы GET и POST. Метод GET передает данные через URL, а POST — через тело HTTP-запроса.
Приведем пример. Создадим простую форму для ввода имени и возраста пользователя. После нажатия на кнопку форма отправляет данные на сервер с помощью POST-запроса.
<form action = "action.php" method = "post">
<p> Your name: <input type = "text" name = "name" /> </p>
<p> Your age <input type = "text" name = "age" /> </p>
<p> input type = "submit"> </ p>
</form>
Данные, передаваемые с помощью метода POST, PHP сохраняет в специальный ассоциативный массив $ _POST, в котором ключи — имена параметров. Так что мы можем получить к ним доступ следующим образом:
Hi <?php echo htmlspecialchars ($ _ POST [ 'name']); ?>
Your are <?php echo (int) $ _ POST [ 'age']; ?> Years old.
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ