- •1. Статические и динамические Web-страницы. Особенности скриптовых программ. Анализ языков управления сценариями (JavaScript, vbScript, php, Perl).
- •2. Назначение и применение языка JavaScript. Ввод и вывод данных. Типы данных. Переменные и операторы. Функции. Встроенные объекты. Пользовательские объекты. Специальные операторы.
- •Способ 1: url-схема "JavaScript:"
- •Способ 2: обработчики событий
- •Способ 3: подстановки
- •Размещение кода внутри html-документа
- •Условная генерация html-разметки на стороне браузера
- •Комментарии в html и JavaScript
- •Регистр символов
- •Указание языка сценария
- •Литералы
- •Переменные
- •Массивы
- •Метод join()
- •Метод reverse()
- •Метод sort()
- •Операторы языка
- •Функции
- •Функция как тип данных
- •Функция как объект
- •3. JavaScript. Создание сценариев. Понятие динамического html. Расположение объектов, обработка событий, объекты, управляемые сценариями. Понятие события. Работа с окнами и фреймами. Объекты
- •Операторы работы с объектами
- •Клиентские объекты
- •Иерархия классов dom
- •Коллекции
- •Cвойства
- •События
- •Пользовательские объекты
- •Понятие пользовательского объекта
- •Прототип
- •Методы объекта Object
- •4. JavaScript. Объектная модель броузера и документа. Особенности объектов Window, Document, Location, History, Navigator, Event, Screen Объект window
- •Свойства объекта window Поле статуса и свойство window.Status
- •Программируем status
- •Программируем defaultStatus
- •Поле адреса и свойство window.Location
- •Свойства объекта location
- •Методы объекта location
- •История посещений (history)
- •Тип браузера (navigator)
- •Методы объекта window
- •Методы focus() и blur()
- •Метод setTimeout()
- •Метод clearTimeout()
- •Методы setInterval() и clearInterval()
- •События объекта window
- •Переменные как свойства окна
- •Объект document
- •Фреймы (Frames)
- •Иерархия и именование фреймов
- •Коллекция фреймов
- •Передача данных во фрейм
- •5. Язык сценариев php. Синтаксис языка.
- •Основной синтаксис
- •Разделение инструкций
- •Комментарии
- •6. Основы php. История развития языка php История php
- •7. Основы php. Настройка среды разработки Установка и настройка по
- •Установка Apache 1.3.29 под Windows xp
- •Установка php 4.3.4 под Windows
- •Установка php под Linux
- •Дистрибутив Денвер
- •Константы
- •10. Основы php. Типы данных в php Типы данных
- •Тип boolean (булев или логический тип)
- •Тип integer (целые)
- •Тип float (числа с плавающей точкой)
- •Тип string (строки)
- •Одинарные кавычки
- •Двойные кавычки
- •Тип array (массив)
- •Определение при помощи array()
- •Определение с помощью синтаксиса квадратных скобок
- •Тип object (объекты)
- •Тип resource (ресурсы)
- •11. Основы php. Операторы. Операторы присваивания. Операторы
- •12. Основы php. Математические функции
- •13. Основы php. Арифметические операции в рнр
- •14. Основы php. Операторы. Приоритет операторов
- •15. Основы php. Операторы. Оператор исполнения
- •16. Основы php. Операторы. Строковые операторы
- •17. Основы php. Операторы. Битовые операторы
- •18. Основы php. Операторы. Условный оператор if Оператор if
- •Оператор else
- •Оператор elseif
- •24. Основы php. Циклы. Цикл for
- •25. Основы php. Циклы. Цикл while
- •26. Основы php. Циклы. Цикл do... While
- •27. Основы php. Циклы. Цикл foreach
- •28. Основы php. Операторы. Оператор break. Бесконечные циклы Операторы передачи управления
- •29. Основы php. Операторы. Оператор continue Операторы передачи управления
- •30. Основы php. Массивы. Основы php. Индексы массивов
- •Массивы
- •Операции с массивами
- •Функция count
- •Функция in_array
- •Функция array_search
- •Функция array_keys
- •Сортировка массивов
- •Функция sort
- •Функции asort, rsort, arsort
- •Функция array_unique
- •Сортировка массива по ключам
- •Сортировка с помощью функции, заданной пользователем
- •Применение функции ко всем элементам массива
- •Выделение подмассива Функция array_slice
- •Функция array_chunk
- •Сумма элементов массива
- •31. Основы php. Обработка данных пользователя из форм Протокол http и способы передачи данных на сервер
- •Форма запроса клиента
- •Использование html-форм для передачи данных на сервер
- •Для метода get
- •Для метода post
- •Обработка запросов с помощью php
- •Пример обработки запроса с помощью php
- •32. Основы php. Использование булевых операторов в структурах управляющей логики// в операторах?
- •33. Пользовательские функции в php. Создание функций
- •Функции, определяемые пользователем
- •Аргументы функций
- •Списки аргументов переменной длины
- •Использование переменных внутри функции Глобальные переменные
- •Статические переменные
- •Возвращаемые значения
- •Возвращение ссылки
- •Переменные функции
- •Внутренние (встроенные) функции
- •34. Работа с файлами в php. Открытие файла. Отображение файлов. Закрытие файла Создание файла Функция fopen
- •Закрытие соединения с файлом
- •35. Работа с файлами в php. Чтение из файлов и запись в файлы Запись данных в файл Функция fwrite
- •Чтение данных из файла
- •Функция fread
- •Функция fgets
- •Функция fgetss
- •Функция fgetc
- •Функция readfile
- •Функция file
- •Функция file_get_contents
- •Проверка существования файла
- •Функция file_exists
- •Функция is_writable
- •Функция is_readable
- •36. Работа с файлами в php. Копирование, переименование и удаление файлов
- •37. Работа с файлами в php. Работа с каталогами //в 38
- •38. Язык сценариев php. Управление сессиями. Работа с www. Работа с Cookies
- •Авторизация доступа
- •Механизм сессий
- •Настройка сессий
- •Работа с сессиями Создание сессии
- •Регистрация переменных сессии
- •Удаление переменных сессии
- •Безопасность
- •39. Язык сценариев php. Взаимодействие с базами данных MySql.
- •Построение интерфейса для добавления информации
- •Установка соединения
- •Выбор базы данных
- •Получение списка полей таблицы
- •Отображение списка полей в html-форму
- •Запись данных в базу данных
- •Отображение данных, хранящихся в MySql
- •40. Php и MySql. Обработка результатов запроса. // в 40
- •41. Анализ субд для работы в Web (WebSql, w3ql, WebOql, MySql).
12. Основы php. Математические функции
abs — Модуль числа
acos — Арккосинус
acosh — Гиперболический арккосинус
asin — Арксинус
asinh — Гиперболический арксинус
atan2 — Арктангенс двух переменных
atan — Арктангенс
atanh — Гиперболический арктангенс
base_convert — Преобразование числа между произвольными системами счисления
bindec — Двоичное в десятичное
ceil — Округляет дробь в большую сторону
cos — Косинус
cosh — Гиперболический косинус
decbin — Переводит число из десятичной системы счисления в двоичную
dechex — Переводит число из десятичной системы счисления в шестнадцатиричную
decoct — Переводит число из десятичной системы счисления в восьмеричную
deg2rad — Преобразует значение из градусов в радианы
exp — Вычисляет число e в степени
expm1 — Возвращает exp(number) - 1, рассчитанное таким образом, что результат точен, даже если number близок к нулю.
floor — Округляет дробь в меньшую сторону
fmod — Возвращает дробный остаток от деления по модулю
getrandmax — Вовзращает максимально возможное случайное число
hexdec — Переводит число из шестнадцатиричной системы счисления в десятичную
hypot — Рассчитывает длину гипотенузы прямоугольного треугольника
is_finite — Проверяет, является ли значение допустимым конечным числом
is_infinite — Проверяет, является ли значение бесконечным
is_nan — Проверяет, является ли значение "не числом"
lcg_value — Комбинированный линейно конгруэнтный генератор
log10 — Десятичный логарифм
log1p — Возвращает log(1 + number), рассчитанный таким, что результат точен, даже если значение number близко к нулю
log — Натуральный логарифм
max — Возвращает наибольшее значение
min — Находит наименьшее значение
mt_getrandmax — Показывает максимально возможное значение случайного числа
mt_rand — Генерирует случайное значение методом mt
mt_srand — Переинициализирует генератор случайных чисел mt
octdec — Переводит число из восьмеричной системы счисления в десятичную
pi — Возвращает число Пи
pow — Возведение в степень
rad2deg — Преобразует значение из радианов в градусы
rand — Генерирует случайное число
round — Округляет число типа float
sin — Синус
sinh — Гиперболический синус
sqrt — Квадратный корень
srand — Изменяет начальное число генератора псевдослучайных чисел
tan — Тангенс
tanh — Гиперболический тангенс
13. Основы php. Арифметические операции в рнр
14. Основы php. Операторы. Приоритет операторов
Приоритет оператора определяет, насколько "тесно" он связывает между собой два выражения. Например, выражение 1 + 5 * 3 вычисляется как 16, а не 18, поскольку оператор умножения ("*") имеет более высокий приоритет, чем оператор сложения ("+"). Круглые скобки могут использоваться для принудительного указания порядка выполнения операторов. Например, выражение(1 + 5) * 3 вычисляется как 18.
Если операторы имеют равный приоритет, то будут ли они выполняться справа налево или слева направо определяется их ассоциативностью - смотрите примеры ниже.
В следующей таблице приведен список операторов, отсортированный по убыванию их приоритетов. Операторы, размещенные в одной строке имеют одинаковый приоритет и порядок их выполнения определяется исходя из их ассоциативности.
Порядок выполнения операторов |
||
Ассоциативность |
Оператор |
Дополнительная информация |
неассоциативна |
clone new |
clone и new |
левая |
[ |
array() |
правая |
++ -- ~ (int) (float) (string) (array) (object) (bool) @ |
типы и increment/decrement |
неассоциативна |
instanceof |
типы |
правая |
! |
логические операторы |
левая |
* / % |
арифметические операторы |
левая |
+ - . |
арифметические операторы и строковые операторы |
левая |
<< >> |
побитовые операторы |
неассоциативна |
< <= > >= |
операторы сравнения |
неассоциативна |
== != === !== <> |
операторы сравнения |
левая |
& |
побитовые операторы и ссылки |
левая |
^ |
побитовые операторы |
левая |
| |
побитовые операторы |
левая |
&& |
логические операторы |
левая |
|| |
логические операторы |
левая |
? : |
тернарный оператор |
правая |
= += -= *= /= .= %= &= |= ^= <<= >>= => |
операторы присваивания |
левая |
and |
логические операторы |
левая |
xor |
логические операторы |
левая |
or |
логические операторы |
левая |
, |
множество применений |
У операторов с равным приоритетом левая ассоциативность подразумевает, что выражение вычисляется слева направо, правая ассоциативность, соответственно, подразумевает противоположный порядок. Неассоциативные операторы с равным приоритетом не могут комбинироваться сами с собой. Например, выражение 1 < 2 > 1 в PHP недопустимо, тогда как выражение 1 <= 1 == 1 корректно, потому что операторT_IS_EQUAL имеет меньший приоритет, чем оператор T_IS_SMALLER_OR_EQUAL.
Пример #1 Ассоциативность
<?php $a = 3 * 3 % 5; // (3 * 3) % 5 = 4 $a = true ? 0 : true ? 1 : 2; // (true ? 0 : true) ? 1 : 2 = 2 $a = 1; $b = 2; $a = $b += 3; // $a = ($b += 3) -> $a = 5, $b = 5 // при совместном использовании ++ и + результат будет неопределенным $a = 1; echo ++$a + $a++; // может вывести 4 или 5 ?>
Использование скобок, даже там где в них нет строгой необходимости, обычно заметно улучшает читабельность кода.
Замечание:
Несмотря на то, что оператор = имеет низший приоритет, чем большинство остальных операторов, PHP все равно позволяет использовать следующую конструкцию: if (!$a = foo()), которая присваивает переменной $a результат выполнения функции foo().
