
- •Язык php
- •Динамические сайты
- •Преимущества обработки страниц на стороне сервера
- •Современные технологии обработки страниц на стороне сервера
- •Active Server Pages (asp)
- •Java Servlets и jsp
- •Контрольные вопросы
- •Возможности языкаPhp ОбработкаHtmLформ
- •ГенерированиеHtmLстраниц
- •Взаимодействие с субд
- •Поддержка большого количества библиотек
- •Контрольные вопросы
- •Создание динамических страниц Создание простейшегоPhp-скрипта
- •Рнр и код, выполняемый на стороне клиента
- •Взаимодействие с пользователем
- •Контрольные вопросы
- •Синтаксис языкаPhp Типы данных
- •Константы
- •Объявление и инициализация переменных
- •Преобразование типов
- •Арифметические операторы
- •Унарный оператор
- •Оператор конкатенации строк
- •Сокращенная запись для присвоениязначений переменным
- •Операторы сравнения
- •Условные операторы
- •Функции пользователя
- •Массивы
- •Работа с файлами
- •Контрольные вопросы
- •Рнр иMySql Обработка и хранение структурированных данных
- •Динамические сайты, использующие базу данных
- •Построение реляционной базы данных
- •Продавцы
- •Заказчики
- •SqLзапросы к реляционной базе данных
- •Insert into salespeople values(1001,'Иванов','Москва',0.12);
- •Insert into customers values(2001,'Белкин','Москва',100,1001);
- •Insert into orders values(3008,4723.00,'2002-10-05',2006,1001);
- •Особенности реализацииMySql
- •ВзаимодействиеPhp иMySql
- •Контрольные вопросы
- •Разработка системы "Прайс-лист"
- •Постановка задачи
- •Принципы функционирования программного комплекса
- •Разработка структуры базы данных
- •Проектирование системы администрирования
- •Проектирование генератора прайс-листа
- •Контрольные вопросы
Контрольные вопросы
На примере простейшего скрипта объясните принцип обработки страницы на стороне сервера
Какие способы выделения PHP-инструкций в телеhtml-страницы вы знаете
Каким образом можно встроить в PHP-скрипт код, выполняемый на стороне клиента
По каким правилам скрипту предаются параметры в строке запроса
В чем заключается различие между способами передачи данных GETиPOST
Объясните различие между строками, заключенными в одинарные и двойные кавычки
Синтаксис языкаPhp Типы данных
В РНР есть три основных типа данных: целое число (integer), действительное число (double) и строка (string). У каждой переменной есть свой тип, однако тип переменной может меняться на лету, когда изменяется значение переменной или иным программным образом.
2 // Это целое число
2.0 // Это действительное число
"2" // Это строка
"2 hours" // Это тоже строка
Во многих языках есть логический тип данных для представления логических значений TRUE и FALSE. В РНР начиная с версии 4 логический тип данных также присутствует. Для целых чисел 0 (ноль) вычисляется как FALSE, а любое ненулевое целое значение - как TRUE. Аналогично, действительное значение 0,0 (или такие его эквиваленты, как 0,000) вычисляются как FALSE, а ненулевые значения вычисляются как TRUE. Что касается строк, то пустая строка вычисляется как FALSE. Она представляется парой кавычек, между которыми ничего нет. Все непустые строки вычисляются как TRUE.
Константы
Константы - это неизменные значения.
Для создания констант используется функция define() :
define("NAME", "Иван");
define("YELLOW", "#FFFF00");
define("VERSION", 3);
define("NL", "<BR>");
В последнем примере определяется константа с именем NL, представляющая тег разрыва текста HTML. В сущности, мы создали сокращение в коде, поскольку "<BR>" является часто используемым тэгом. Константа может содержать любое числовое или строковое значение. Когда константы определены, ими можно пользоваться вместо их значений:
echo "Его зовут " .NAME.NL;
Это эквивалентно выводу строки:
echo "Его зовут Иван<BR>";
Обратите внимание, что константы помещаются вне кавычек. Строчка:
echo "Его зовут ИванNL";
вывела бы в броузер буквально "Его зовут ИванNL"
Объявление и инициализация переменных
В отличие от констант, переменные автоматически объявляются в РНР при присвоении им значений. Присвоение осуществляется с помощью оператора присваивания (=). Имя переменной обязательно начинается с символа $ .
$name = "Иван";
$value1 = 22;
$value2 = 5.00;
Преобразование типов
Как уже говорилось, у каждой переменной РНР имеется тип данных. Этот тип автоматически определяется значением, присвоенным этой переменной.
$а = 1; // $а - целое
$а = 1.2; // теперь это число с плавающей запятой
$а = "А"; // теперь это строка
При выполнении над строкой числовой операции РНР переводит строку в число. В следующем примере переменной $str присваивается строковое значение:
$str = "222В Baker Street";
Если попытаться прибавить к $str целое число 3, то для проведения вычислений $str будет переведена в целое число 222:
$х = 3 + $str; // $х = 225;
При этом значение самой переменной $str не изменится:
echo ($str); // Выводит: "222В Baker Street"
При преобразовании строк соблюдаются следующие правила правила:
В число переводится только начало строки. Если строка начинается с допустимого численного значения, она будет переведена в это значение, в противном случае - в ноль. Строка "3rd degree" переводится в 3 при использовании в числовой операции, но "Catch 22" будет переведена в О (ноль).
Строка переводится в число с плавающей запятой только в случае, если представляемое число занимает всю строку. Строки "3,4", "-4,01" и "4,200" переводятся в действительные числа 3,4, -4,01 и 4,200. Однако если строка включает другие символы, не представляющие действительное число, она переводится в целое. Например, строка "3,4 children" переводится в целое число 3, а строка " -4,01 degrees" переводится в целое число -4.
Помимо преобразования строк РНР производит приведение различных числовых типов. Если выполняется числовая операция над числом с плавающей запятой и целым, то результат будет числом с плавающей запятой:
$а = 1; // $а - целое
$b = 1.0; // $b - число с плавающей запятой
$с = $а +$b; // $с - число с плавающей запятой (значение 2,0)
$d = $с +"6th" // $d - число с плавающей запятой (значение 8,0)