- •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).
17. Основы php. Операторы. Битовые операторы
Побитовые операторы позволяют считывать и устанавливать конкретные биты целых чисел.
Побитовые операторы |
||
Пример |
Название |
Результат |
$a & $b |
И |
Устанавливаются только те биты, которые установлены и в $a, и в $b. |
$a | $b |
Или |
Устанавливаются те биты, которые установлены в $a или в $b. |
$a ^ $b |
Исключающее или |
Устанавливаются только те биты, которые установлены либо только в $a, либо только в $b, но не в обоих одновременно. |
~ $a |
Отрицание |
Устанавливаются те биты, которые не установлены в $a, и наоборот. |
$a << $b |
Сдвиг влево |
Все биты переменной $a сдвигаются на $b позиций влево (каждая позиция подразумевает "умножение на 2") |
$a >> $b |
Сдвиг вправо |
Все биты переменной $a сдвигаются на $b позиций вправо (каждая позиция подразумевает "деление на 2") |
Побитовый сдвиг в PHP - это арифметическая операция. Биты, сдвинутые за границы числа, отбрасываются. Сдвиг влево дополняет число нулями справа, сдвигая в то же время знаковый бит числа влево, что означает что знак операнда не сохраняется. Сдвиг вправо сохраняет копию сдвинутого знакового бита слева, что означает что знак операнда сохраняется.
Используйте скобки для обеспечения необходимого приоритета операторов. Например, $a & $b == trueсначала проверяет на равенство, а потом выполняет побитовое и; тогда как ($a & $b) == true сначала выполняет побитовое и, а потом выполняет проверку на равенство.
Не забывайте о преобразовании типов данных. Если оба, и левый и правый операнды являются строками, побитовый оператор будет работать с ASCII значениями символов этих строк.
Опция настроек PHP error_reporting использует побитовые значения,
обеспечивая реальную демонстрацию гашения значений битов.
Чтобы показать все ошибки кроме замечаний,
инструкции в файле php.ini предлагают использовать:
E_ALL & ~E_NOTICE
Начинаем со значения E_ALL:
00000000000000000111011111111111
Затем берем значение E_NOTICE...
00000000000000000000000000001000
... и инвертируем его с помощью ~:
11111111111111111111111111110111
Наконец, используем побитовое И (&), чтобы установить только те биты,
которые установлены в единицу в обоих значениях:
00000000000000000111011111110111
Другой способ достичь этого - использовать ИСКЛЮЧАЮЩЕЕ ИЛИ (XOR, ^),
чтобы получить только те биты, которые установлены в единицу
либо только в одном, либо только в другом значении:
E_ALL ^ E_NOTICE
Опция error_reporting также может быть использована для демонстрации
установки битов. Показать только ошибки и обрабатываемые ошибки можно
следующим образом:
E_ERROR | E_RECOVERABLE_ERROR
Здесь мы комбинируем E_ERROR
00000000000000000000000000000001
и
00000000000000000001000000000000
с помощью оператора ИЛИ (OR, |),
чтобы получить биты, установленные хотя бы в одном операнде:
00000000000000000001000000000001
