the basic design of the php language

Post on 08-Jul-2015

872 Views

Category:

Education

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

The basic design of the PHP language

TRANSCRIPT

Краткая историяИстория РНР начинается с 1995 года, когда независимый программист-контрактник по имени Расмус Лердорф(Rasmus Lerdorf) написал сценарий Perl/CGI для подсчета количества посетителей сайта, прочитавших его онлайновое резюме. Лердорф начал бесплатно раздавать свой инструментарий, названный Personal Home Page(РНР) или Hypertext Processor(гипертекстовый процессор).

К моменту выхода версии 3.0 в 1997 году

свыше 50 000 пользователей

применяли РНР для улучшения своих web-

страниц. В 1997 году было решено, что сокращение РНР должно означать не «Personal Home page», а

«РНР Hypertext Processor»

• В начале 1999 года было объявлено о предстоящем выходе РНР 4.0. Хотя одной из сильнейших сторон РНР была эффективность выполнения сценариев, при первоначальных разработках не предполагалось, что на базе РНР будут строиться крупномасштабные приложения. Работа шла быстро и завершилась 22 мая 2000 года выпуском РНР версии 4.0.

• РНР лучше всего охарактеризовать как

работающий на стороне сервера встроенный

язык сценариев Web, позволяющий

разработчикам быстро и эффективно строить

динамические web-приложения.

Характеристики

• традиционность; • Простота; • эффективность; • безопасность; • гибкость.

PHP

Бесплатное распространение• Принятие стратегии Open Source и бесплатное

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

Область примененияВ области программирования для Сети PHP — один из популярных скриптовых языков. Популярность в области построения веб-сайтов определяется наличием большого набора встроенных средств для разработки веб-приложений. Основные из них:• автоматическое извлечение POST и GET-параметров; • взаимодействие с большим количеством различных систем

управления базами данных;; • работа с HTTP-авторизацией, с cookies и сессиями, работа с

локальными и удалёнными файлами, сокетами, с XForms. Согласно рейтингу корпорации TIOBE, базирующемся на данных поисковых систем, в апреле 2011 года PHP находился на 5 месте среди языков программирования.Входит в LAMP — распространённый набор программного обеспечения для создания веб-сайтов.

Синтаксис PHPСинтаксис PHP очень напоминает синтаксис

языка C и во многом заимствован из таких языков как Java и Perl. Программист С очень

быстро освоит язык PHP и сможет использовать его с максимальной

эффективностью. В принципе, в PHP есть практически все операторы и функции,

имеющиеся в стандартном GNU С, например есть циклы, операторы выбора, функции

работы с файловой системой и процессами, функции ввода-вывода и множество других...

Разделение инструкций

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

<?phpecho "Это тест"; ?><?php echo "Это тест" ?>

<?phpecho "Это тест";?><?php echo

"Это тест" ?>

<?phpecho "Это тест";?><?php echo

"Это тест" ?>

Комментарии в PHP скриптах

<?phpecho "Это тест"; // Это однострочный комментарий в стиле c++/* Это многострочный комментарийеще одна строка комментария */echo "Это еще один тест";echo "Последний тест"; # Это комментарий в стиле оболочки Unix?>

Переменные в PHP• Имена переменных обозначаются

знаком $. То же самое "Привет, я - скрипт PHP! " можно получить следующим образом:

<?php$message = "Привет, я - скрипт PHP!";echo $message;?>

Типы данных в PHP

Четыре скалярных типа:• boolean• integer

• float• string

Два смешанных типа: • array• object

Два специальных типа:• resource• NULL

Псевдотипов:• mixed • number • callback

Выражения в PHP

Основными формами выражений являются константы и переменные. Например, если вы записываете "$a = 100", вы присваиваете '100' переменной $a:В приведенном примере $a - это переменная, = - это оператор присваивания, а 100 - это и есть выражения. Его значение 100.

Операторы PHPОператоры присвоения: <?php$a = ($b = 4) + 5; // результат: $a установлена значением 9, переменной $b присвоено 4. ?>Комбинированные операторы:<?php$a = 3;$a += 5; // устанавливает $a значением 8, аналогично записи: $a = $a + 5;$b = "Hello ";$b .= "There!"; // устанавливает $b строкой "Hello There!", как и $b = $b . "There!"; ?>

Строковые операторы:<?php$a = "Hello ";$b = $a . "World!"; // $b содержит строку "Hello World!"$a = "Hello ";$a .= "World!"; // $a содержит строку "Hello World!"

?>

Управляющие конструкции PHP

Любой сценарий PHP сформирован из ряда конструкций. Конструкцией могут быть операторы, функции, циклы, условные операторы… Конструкции обычно заканчиваются ;. Кроме того, конструкции могут быть сгруппированы в группу, формируя группу конструкций с изогнутыми фигурными скобками {...}.

• Конструкция if– <?php

– if (логическое выражение) оператор;

– ?>

• Конструкция else– if (логическое_выражение)

– инструкция_1;

– else

– инструкция_2;

• Конструкция elseif– if (логическое_выражение_1)

– оператор_1;

– elseif (логическое_выражение_2)

– оператор_2;

– else

– оператор_3;

Условные операторы

• Цикл с предусловием while– while (логическое_выражение)

– инструкция;

• Цикл с постусловием do while– Do

– {

– тело_цикла;

– }

– while (логическое_выражение);

• Цикл со счетчиком for– for (инициализирующие_команды; условие_цикла;

команды_после_итерации)

– { тело_цикла; }

• Цикл перебора массивов foreach– foreach (массив as $ключ=>$значение)

– команды;

Циклы

Конструкции выбора

Часто вместо нескольких расположенных подряд инструкций if-else целесообразно воспользоваться специальной конструкцией выбора switch-case. Данная конструкция предназначена для выбора действий, в зависимости от значения указанного выражения.

Синтаксис конструкции switch-case такой:

switch(выражение) {case значение1: команды1; [break;]case значение2: команды2; [break;]. . .case значениеN: командыN; [break;][default: команды_по_умолчанию; [break]]}

Конструкция declare Конструкция объявления declare используется, чтобы установить директивы выполнения для блока кода. Синтаксис declare подобен синтаксису других управляющих конструкций языка PHP:

● declare (директива) ● инструкция;

Директива позволяет установить поведение блока declare. В настоящее время в PHP доступна только одна директива - tick. Инструкция является частью блока declare.Как будет выполнена инструкция (инструкции), зависит от директивы.

Конструкция return

Конструкция rerurn возвращает значения, преимущественно из пользовательских функций, как

параметры функционального запроса. При вызове return исполнение пользовательской функции прерывается, а конструкция return возвращает определенные значения. Возврат приводит к

завершению выполнения функции и передаче управления обратно к той строке кода, в которой

данная функция была вызвана.

• Конструкция включений requireКонструкция require позволяет включать файлы в сценарий PHP до исполнения сценария PHP. Общий синтаксис require такой:

– require имя_файла;

• Конструкция включений includeВ отличие от конструкции require конструкция include позволяет включать файлы в код PHP скрипта во время выполнения сценария. Синтаксис конструкции include выглядит следующим образом:

– include имя_файла;

Конструкции

включений

top related