Литература 1.Мазуркевич А., Еловой Д. РНР: настольная книга программиста. – М.: Новое знание, 2004. -479 с. 2.Основы программирования РНР: курс лекций:

Презентация:



Advertisements
Похожие презентации
Переменные и операторы УРОК 2. Переменные ПЕРЕМЕННАЯ – ?... контейнер для хранения данных. Переменная имеет имя – это….? последовательность букв, цифр.
Advertisements

PHP PHP (Hypertext Preprocessor) Язык программирования общего назначения, применяемый для разработки веб-приложений.
Тип, имя и значение переменной.. Переменные. В объектно-ориентированных языках программирования, и в частности в языке Visual Basic, переменные играют.
Лекция 4 Программирование на Паскале. Элементы языка Турбо Паскаль 7.0. Типы данных. Управляющие конструкции.
Троицкий Д.И. Интернет-технологии1 ДИНАМИЧЕСКИЕ WEB-СТРАНИЦЫ СЕРВЕРНЫЕ СЦЕНАРИИ Лекция 9 Кафедра «Автоматизированные станочные системы» Dept. of Automated.
Введение в Java Script УРОК 1. Пример ПЕРВЫЙ Открыть программу блокнот и записать следующую команду: Сохранить файл С расширением JS загрузить файл Двойным.
Объектно-ориентированный язык программирования. Переменная - эта поименованная ячейка памяти, хранящая какое-либо одно значение (одно число, один фрагмент.
Pascal 1 Основы языка Паскаль Информатика и ИКТ Смирнов М.В. МКО ООШ п. Климковка Белохолуницкого района Кировской области.
Переменные : имя, значение, тип. Разработал учитель информатики МБОУ СОШ 50 г. Краснодара Ракута Елизавета Григорьевна « Сперва аз да буки, а потом науки.
Тип, имя и значение переменной. В объектно-ориентированных языках программирования переменные играют такую же важную роль, как и в процедурных языках.
Язык программирования FreeBasic. Введение.. Что такое FreeBasic ? FreeBasic - язык высокого уровня, нацеленный на легкое и удобное написание программ.
ОБЩИЕ СВЕДЕНИЯ О ЯЗЫКЕ ПРОГРАММИРОВАНИЯ ПАСКАЛЬ НАЧАЛА ПРОГРАММИРОВАНИЯ.
Структура HTML- документа. Терминология Элемент - конструкция языка HTML. Это контейнер, содержащий данные и позволяющий отформатировать из определенным.
это десятки миллионов Web-серверов Интернета, содержащих Web-страницы, в которых используется технология гипертекста. Технология WWW позволяет создавать.
Powerpoint Templates Page 1 Язык разметки гипертекста HTML.
План-конспект урока (информатика и икт, 9 класс) по теме: Переменные:тип, имя, значение
Операции Условная операция ? : Если истинно, то результатом будет, иначе. Например, int x = a < b ? a : b вычисляет минимум из a и b.
Оператор ввода с клавиатуры Переменные величины. В большинстве случаев при решении задач в ходе работы программы, оператору описания необходимо менять.
Транксрипт:

Литература 1. Мазуркевич А., Еловой Д. РНР: настольная книга программиста. – М.: Новое знание, с. 2. Основы программирования РНР: курс лекций: уч. Пособие для ст-тов вуза / Н.В.Савельева. – М.: Интернет- Ун-т информ. Технологий, –264 с. 3. Справочное руководство по языку РНР Федотов Ф.М. Введение в Интернет.

1. Краткая история PHP 2. Преимущества и недостатки РНР 3. Синтаксис и грамматика языка 3.1 Способы выхода из HTML и перехода в РНР 3.2 Разделение инструкций 3.3 Комментарии 3.4 Специальные символы 3.5 Переменные 3.6 Типы переменных 3.7 Целые числа 3.8 Числа с плавающей точкой 3.9 Строки

1. Краткая история PHP PHP (рекурсивный акроним для "PHP: Hypertext Preprocessor/Гипертекстовый Препроцессор ", первоначально - Personal Home Page ) – язык написания сценариев, внедренный в HTML. Многое из синтаксиса заимствовано из C, Java и Perl, с добавлением специфичных для PHP возможностей. Задача языка состоит в том, чтобы дать возможность Web-разработчикам легко и быстро создавать динамично изменяемые html-страницы. PHP – язык описания сценариев, выполняемых на сервере, встроенный в HTML.

Самая значимая возможность в PHP - уровень интеграции с базами данных. Написание веб-страницы работающей с БД очень проста. В настоящее время поддерживаются следующие базы данных: Oracle, Adabas D, Sybase, FilePro, mSQL, Velocis, MySQL, Informix, Solid, dBase, ODBC, Unix dbm, PostgreSQL PHP был задуман в конце 1994 года Расмусом Лед- торфом (Rasmus Lerdorf). Ранние версии использовались на его домашней странице для того, чтобы следить за тем кто просматривал его интерактивное резюме. Первая используемая версия стала доступна в 1995 г. и была известна как Personal Home Page Tools. Она состояла из гостевых книг, счетчиков и некоторых других дополнений.

Отмечено, что к 1996 г. PHP был использован на 15,000 веб-сайтах мира. В 1997 г. эта цифра выросла до более чем 50,000. В 1997 г. также наблюдалось изменение в разработке PHP. Из частного любимого проекта Расмуса, которому способствовала горстка людей, это превратилось в намного более организованную рабочую группу. Синтаксический анализатор был заново переписан Зевом Сураски (Zeev Sur-aski) и Анди Гутмансом (Andi Gutmans), и новый анализатор стал основой для PHP 3. В середине –1998 г. PHP используется на 150,000 сайтах во всем мире. В перспективе их больше чем сайтов, запущенных на Netscape's flagship Enterprise server в Интернете.

PHP может использоваться на всех крупных ОС, включая Linux, многие варианты Unix (HP-UX, Solaris и OpenBSD), Microsoft Windows, Mac OS X, RISC OS и другие. PHP имеет поддержку для большинства существующих web-серверов. Это Apache, Microsoft Internet Information Server, Personal Web Server, Nets- cape и iPlanet-серверы и многие другие. Для большинства этих серверов PHP имеет моду- ли. В других, поддерживающих стандарт CGI, PHP может работать как CGI-процессор. PHP может выводить изображения, PDF-файлы и даже клипы Flash.

Сейчас РНР это быстро развивающееся средство программирования, работающее на очень многих серверах в Интернете. Как средство разработки Web-приложений РНР является одним из самых популярных вместе с ASP и Front- Page. Благодаря этому языку появляется возможность легко создавать динамические сайты. Файлы, созданные таким образом, хранятся и обрабатываются на сервере. Когда посетитель запрашивает документ с РНР, скрипт обрабатывается не браузером посетителя, как, например, JavaScript, а сервером, и посетителю передаются только результаты ра- боты. Точно так же работает CGI-программа, написанная на С или Perl. Но в отличие от CGI код PHP-программы можно встраивать в любое место HTML-страницы, что, конечно, является основным преимуществом перед CGI. Кроме того, сам язык очень прост для изучения и не требует каких-либо специфических знаний.

2. Преимущества и недостатки РНР Преимущества РНР. РHP – скрипт-язык, который непосредственно встраивается в HTML-код и выполняется сервером. Приведем пример, демонстрирующий саму работу и способ встраивания PHP-скрипта в документ. Пример 1. Встраивание PHP в документ Listing l

Открывающий тег показывает, что данный файл содержит HTML-страницу. Текст Listing 1 задает название документа, которое может быть любым, по желанию программиста. Они располагаются между тегами, которые содержат заголовок страницы. Контейнер охватывает все содержимое документа, которое должно быть представлено пользователю. Именно в этой части вставлен PHP-скрипт. Функция echo "Здравствуй! Это мой скрипт!" ; выведет в окно браузера фразу, заключенную между двойными кавычками. После выполнения скрипта получим страницу с надписью Здравствуй! Это мой скрипт! Каждый оператор в РНР отделяется точкой с запятой. При отсутствии этого символа между операторами браузер выдаст сообщение об ошибке, указывающее номер строки, в которой она произошла.

Основное отличие PHP от CGI-скриптов, написанных на других языках, типа Perl, - это то, что в CGI-программах вы сами пишете выводимый HTML-код, а используя РНР, встраиваете свою программу в готовую HTML-страницу при помощи открывающего и закрывающего тегов (см. пример 1 ). Отличие РНР от JavaScript состоит в том, что PHP-скрипт выполняется на сервере, а клиенту передается результат работы, тогда как JavaScript-код полностью находится на клиентской машине и только там выполняется. Любители Internet Information Server найдут, что РНР очень похож на Active Server Pages (ASP), а энтузиасты Java скажут, что РНР похож на Java Server Pages (JSP). Все три языка позволяют размещать код, выполняемый на Web-сервере, внутри HTML-страниц. В РНР включена поддержка многих баз данных (БД), что делает написание Web-приложений с использованием БД весьма простым.

Недостатки РНР: 1) Основным недостатком РНР является то, что по своей идеологии РНР 3 изначально был ориентирован на написание небольших скриптов. Однако этот недостаток ликвидирован в РНР 4 и выше. 2) РНР является псевдокомпилируемым языком и вследствие этого не может сравниться по скорости с компилируемым С. Однако при написании небольших программ, когда весь проект состоит из многих небольших страниц с кодом, вступают в силу накладные расходы на загрузку в память и вызов CGI- программы, написанной на С. 3) Не такая большая база готовых модулей, как, например, CPAN у Perl. С этим ничего нельзя поделать это дело времени. В РНР 4 разработчики предусмотрели специальный репозиторий, аналогичный CPAN, и очень скоро будет написано достаточное количество модулей для его наполнения.

3. Синтаксис и грамматика языка 3.1 Способы выхода из HTML и перехода в "режим PHP кода": echo ("некоторые редакторы (подобные FrontPage) используют эти инструкции"); ; 4. Только два из них ( и... ) всегда доступны;

Как и многие другие языки программирования, PHP требует, чтобы программа была обрамлена специальными начальными и конечными последовательностями, т.е. тегами, обозначающими начало и окончание кода на PHP. Для PHP существует их четыре, почти равнозначных, варианта: 1. Вариант первый, стандартные теги обрамления: o начальный <?php o конечный ?> Этот вариант наиболее предпочтителен, т.к. будет гарантированно работать на сервере с любыми настройками PHP. Мы будем использовать в примерах именно их. Так как остальные должны быть явно разрешены администратором хостинга в настройках PHP.

1. Вариант второй, короткие теги обрамления: o начальный <? o конечный ?> 2. Вариант третий, теги обрамления в стиле asp: o начальный <% o конечный %> Эти два варианта работают только если в настройках PHP на вашем хостинге включены соответствующие настройки, в универсальных сценариях, предназначенных для выполнения на любом хостинге, их употреблять не рекомендую, может оказаться, что соответствующие настройки отключены и тогда ваши сценарии просто не будут работать.

1. Вариант четвертый, программные теги обрамления: o начальный o конечный Этот вариант часто тоже может являться универсальными работать на любом хостинге. Файлы PHP должны иметь расширение php или phtml, последний вариант может быть и не включен в качестве расширений файлов PHP. Кроме этих расширений, сервер может включить в список расширений файлов для сценариев PHP вообще любое расширение, поэтому какие расширения используются вашим хостингом можно узнать только у провайдера вашего хостинга. В наших примерах мы будем использовать расширение *.php.

3.2 Разделение инструкций Инструкции разделяются так же, как и в Cи – каждый оператор оканчивается символом "точка с запятой". Закрывающий тег (?>) также подразумевает конец оператора, поэтому следующие варианты эквивалентны:

3.3 Комментарии PHP поддерживает комментарии 'C', 'C++' и оболочки Unix. Их в PHP существует три вида: 1. Однострочные (в конце строки) - предваряется последовательностью из двух слешей (//), <?php echo " Это тест "; // Это комментарий как в С ++ ?> - предваряется символом хэш (# – решеткой), Такие комментарии частенько можно применять внутри циклов или массивов.

1. Многострочный - начинается последовательностью слэш и звездочка (/*), оканчивается обратным порядком звездочка и слэш (*/) /* Это многострочный комментарий как в Си, это ещё одна его строка */ // этот комментарий записывается в конце строки Многострочными комментариями не рекомендую т злоупотреблять, так как в некоторых ситуациях это может вызвать ошибку в программе.

Примеры Теперь мы готовы написать первую программу на PHP. Естественно, по традиции, это будет программа, выводящая в браузер текст "Здравствуй мир". Поместите следующий код в какой-нибудь файл, например в example1. php : Если вы будете использовать короткие теги, то эту же программу можно будет написать короче, а именно:

Теперь запустите РНР в браузере вызовите этот файл по адресу, например вот так: php В браузере будет выведена строка «Здравствуй мир», естественно без кавычек. Существует и другой эквивалент команды (функции) print, а именно : echo(); Скобки не обязательны, но и print и echo функ- ции, поэтому принято в справочниках их обозначать со скобками. Следует еще раз напомнить, что абсо- лютное большинство однострочных команд в PHP должно заканчиваться точкой с запятой (;)

Теперь приведем пример, выводящий таблицу: "; print "Заголовок таблицы "; print " Что-нибудь Еще что-нибудь "; ?> ИЛИ по-другому: Заголовок таблицы Что-нибудь Еще что- нибудь "; ?>

Заметим в этих примерах, когда теги таблицы выводились функцией print(), кавычки внутри строки предварялись обратным слэшем (\)? Без этого интерпретатор PHP выдал бы ошибку. Но можно это дело обойти. Для этого вместо двойных кавычек надо всего лишь использовать апострофы ('). Правда такой подход накладывает некоторые ограничения на выводимый текст. Дело в том, что если строка содержит переменные, которые должны интерполироваться в их содержимое при выводе на печать в браузер, то помещать такие переменные в строку с апострофами нельзя, так как в этом случае они не покажут своего содержимого (смотрите пример ниже), напротив, в строке, ограниченной двойными кавычками, переменные легко интерполируются и PHP подставляет вместо имени переменной ее содержимое. Это надо помнить.

3.4 Специальные символы К специальным символам относятся: $ знак доллара – начинает имя переменной, " двойная кавычка – предназначена для написания данных строкового типа, ' знак апострофа – предназначен также для написания данных строкового типа, при этом не позволяет интерполи- ровать переменные и константы в их значение, а выводит как имена, знаки (операторы) арифметических действий (операций): (+, -, *, /, % (деление по модулю, то есть вычисление остатка от деления)), операторы сравнения (= =, !=, >, =, <=), логических операций (||, &&, !),

3.5 Переменные Переменная – это временное хранилище различного типа данных. Временное, потому, что значение перем- енных можно изменять в процессе написания и вып- олнения программы. В PHP имя любой переменной обязательно должно начинаться с символа доллара ($) и далее состоять только из букв латинского алфавита, цифр или знака подчеркивания, при этом после доллара сразу может идти только буква (нельзя давать имя переменной в кириллице или начинать с цифры или со знака подчеркивания). Например: $alfa // Это правильно написанная переменная, $alfa_romeo5_5 // И это правильно написана

$54beta_gamma // Это неправильное имя переменной $345 // И это неправильное имя переменной $alfa-romeo // И это неправильное имя переменной Кроме того, регистр символов в именах переменных играет большую роль, то есть $Alfa_Romeo не тоже самое, что $alfa_romeo. В переменных вы можете хранить различного типа данные, это могут быть строки, отдельные символы, целые строки символов, числа, массивы, объекты или логические значения. Значение переменной можно в любой момент и в любом месте программы изменять. Фактически переменная – это основной инструмент PHP. Без использования переменных не обойтись.

Например: <?php $first=' Text '; // Присвоение $first значение ' Text ' $second=$first; /* Присваиваем $second значение переменной $first */ $first = ' New text '; // Изменим значение $first на " New text " echo "Переменная с именем first равна $first "; // выведем значение $first echo "Переменная с именем second равна $second "; // выведем значение $second ?> Результат: Переменная с именем first равна New text Переменная с именем second равна Text

Другой пример: <?php define("PASSWORD", " qwerty"); // определяем константу PASSWORD define("PI", "3.14",True); // определяем регистронезависимую константу PІ echo (PASSWORD); // вывод значения константы PASSWORD echo constant("PASSWORD"); // тоже самое qwerty выведет echo (password); /* вывод password и предупреждение поскольку мы ввели регистронезависимую константу PASSWORD */ echo " "; echo (pi); // вывод значения 3.14, т.к. PI регистронезависима по определению ?>

Его результат: qwerty qwerty Notice: Use of undefined constant password - assumed 'password' in c:\Inetpub\wwwroot\php\primer2-4. php on line 6 password 3.14

3.6 Типы переменных PHP поддерживает 8 простых типов. Четыре скалярных типа: integer - целый (например 1000), boolean – логический (true, false; 1, 0), float - числа с плавающей точкой (3,14) string - строковый ("Крокодил"), Два составных типа: array - массив object - объектная переменная (при объектно-ориентированном подходе), И два специальных типа: resource - ресурс NULL. Тип переменной обычно программистом не устанавливается; он определяется РНР на этапе выполнения, в зависимости от контекста, в котором эта переменная используется.

Чтобы использовать переменную в своей программе, вы долж- ны присвоить ей какое-то значение, то есть инициализировать, причем, PHP не требует предварительного объявления перем- енных, то есть каждая переменная безошибочно появляется в программе с того самого момента, когда ей присвоено какое-то значение. Присвоение значения осуществляется следующим выражением: $variable="значение"; или $variable="выражение"; или $variable=$var;

3.7 Целые числа integer это число из набора Z = {..., -2, -1, 0, 1, 2,...} Целые числа могут специфицироваться в десятичной, 16-ной или 8-ной записи с необязательным знаком (- или +). Если вы используете 8-ную нотацию, первым символом числа должен быть 0 (нуль), для 16-ной нотации первыми символами числа будут 0x. Примеры целых чисел: $a = 1234; # 10-ное число $a = -123; # отрицательное число $a = 0123; # 8-ное число (экивалентно 10-ному 83) $a = 0x1A; # 16- ное число (экивалентно 10-ному 26)

Размер integer зависит от платформы, хотя макси- мальное значение около 2 миллионов является обычным (то есть 32-битное знаковое). PHP не поддерживает беззнаковые integer. Если вы специфицируете число за рамками диапазона типа integer, оно будет интерпретировано как float. Также, если вы выполняете операцию, которая даёт в результате число за пределами диапазона типа integer, будет возвращено float. В PHP нет операции целочисленного деления. 1/2 даст 0.5.

Примеры: $large_number = ; var_dump($large_number); // на выходе: int( ) $large_number = ; var_dump($large_number); // на выходе: float( ) // это подходит также для 16-ричных чисел: var_dump( 0x ); // на выходе: float( ) $million = ; $large_number = * $million; var_dump($large_number); // на выходе: float( ) Результат: int( ) float( ) float( ) float( ) float(5.0E+10)

Пример: <?php $a = 1234; $b = -1.2e3; $c = 0123; // восьмеричное число 83 в 10-ой системе $d = 0x1A; // шестнадцатеричное число 26 в 10-ой системе echo "a = $a "; echo "b = $b "; echo "c = $c "; echo "d = $d "; ?> Результат: a = 1234 b = c = 83 d = 26

3.8 Числа с плавающей точкой Числа с плавающей точкой ("float", "double" или "real") могут специфицироваться с использованием следующих видов синтаксиса: $a = 1.234; $b = 1.2e3; $c = 7E-10; Размер float зависит от платформы, хотя максимально возможна величина ~1.8e308 с точностью, грубо, 14 десятичных цифр (то есть 64 битный формат).

Пример: <?php $a = 1234; $b = -1.2e3; $c = 0123; // восьмеричное число 83 в 10-ой системе $d = 0x1A; // шестнадцатеричное число 26 в 10-ой системе echo "a = $a "; echo "b = $b "; echo "c = $c "; echo "d = $d "; ?> Результат: a = 1234 b = c = 83 d = 26

3.9 СТРОКИ Строка (string) - это набор символов. В PHP символ это то же самое, что и байт, то есть имеется ровно 256 различных символов. Это также предполагает, что в PHP нет встроенной поддержки Unicode. В PHP строки могут быть очень большими. Практически нет ограничений на размер строк в PHP, поэтому нет никаких причин заботиться о длине строк. Стро ка в РНР може т быть определена тремя способами. одинарными кавычками; двойными кавычками; heredoc-синтаксисом.-

Одинарные кавычки Чтобы использовать одинарную кавычку внутри строки, как во многих других языках, перед ней нужно поставить символ обратной косой черты (\), т.е. экранировать ее. как. Если обратный слэш должен появиться перед одинарной кавычкой или в конце строки, нужно его удвоить (\\). Если внутри строки, заключенной в одинарные кавычки, обратный слэш встречается перед любым другим символом (отличным от \ и), то он рассматри- вается как обычный символ и выводится, как и всеостальные. Поэтому обратную косую черту необходимо экранировать, только если она находится в конце строки, перед закрывающей кавычкой.

В РНР существует ряд комбинаций символов, начинающихся с символа обратной косой чер- ты. Их называют управляющими последователь- ностями, и они имеют специальные значения, о которых расскажем позже. Так вот, в отличие от двух других синтаксисов, переменные и управ- ляющие последовательности для специальных символов, встречающиеся в строках, заключен- ных в одинарные кавычки, не обрабатываются.

<?php echo Также вы можете вставлять в строки символ новой строки таким образом, поскольку это нормально '; // Выведет: Чтобы вывести надо перед ней поставить \ echo 'Чтобы вывести \ надо перед ней поставить \\; //Выведет: Вы хотите удалить С:\*.*? echo Вы хотите удалить С:\\*.*?; //Выведет: Это не вставит: \n новую строку echo ' Это не вставит: \n новую строку'; // Выведет: Переменные $expand также $either не подставляются echo ' Переменные $expand также $either не подставляются'; ?>

Результат: Также вы можете вставлять в строки символ новой строки таким образом, поскольку это нормально Чтобы вывести \ надо перед ней поставить \ Вы хотите удалить C:\*.*? Это не вставит: \n новую строку Переменные $expand также $either не подставляются.

Двойные кавычки Если строка заключена в двойные кавычки ("), PHP распознает б́ольшее количество управляющих последовательностей для специальных символов: Последовательность \n \r \t \\ \$ \ Значение Новая строка (LF или 0x0A (10) в ASCII) возврат каретки (CR или 0x0D (13) в ASCII) горизонтальная табуляция (HT или 0x09 (9) в ASCII) обратная наклонная черта знак доллара двойная кавычка Ещё раз напоминаем, если вы захотите экранировать любой другой символ, обратная косая черта также будет напечатана! Самым важным свойством строки, заключён ной в двойные кавычки, является обработка переменных.

Heredoc Другой способ определения строки - использовать heredoc-синтаксиса ("<<<"). После <<< необходимо предоставить идентификатор, затем строку, а затем - тот же идентификатор как закрывающую кавычку. Закрывающий идентификатор обязан начинаться в первом столбце строчки. Используемый идентифика- тор также обязан следовать тем же правилам именова- ния, что и все другие метки в PHP: он может содер- жать только буквенно-цифровые символы и символ подчёркивания и начинаться не с цифры или с символа подчёркивания.

Heredoc текст ведёт себя так же, как строка в двойных кавычках. Это значит, что вам не нужно экранировать кавычки в heredocs, но можно продолжать использовать управляющие последовательности, перечисленные выше. Переменные внутри heredoc также обрабатываются. Пример: <?php $str = <<<EOD Пример строки в несколько строчек с использованием heredoc-синтаксиса EOD; // ЗДЕСЬ идентификатор - EOD. Ниже ид-р EOT $name = "Бекзат"; $name2="Азат"; echo <<<EOT Его зовут "$name", другого "$name2". EOT; // Вывод " Его зовут Бекзат, другого Азат". ?>