Главная arrow Язык программирования PHP
Язык программирования PHP

Основы PHP

PHP программы

Программы PHP могут выполняться двумя способами: как сценарное приложение Web-сервером и как консольные программы. Поскольку, нашей задачей является программирование web-приложений, мы преимущественно будем рассматривать первый способ.

Подробнее...
 

Комментарии

Комментарии

PHP предоставляет несколько методов для вставки комментариев. Проще всего пользоваться двойным слэшем (//), после чего PHP машина игнорирует все, что расположено до конца строки. Также можно пользоваться многострочными комментариями в стиле С (/*…*/). Для однострочных комментариев можно еще пользоваться символом решетки (#) (комментарий скриптовых языков UNIX).

Подробнее...
 

Переменные PHP

Переменные

В РНР переменные начинаются со знака доллара ($). За этим знаком может следовать любое количество буквенно-цифровых символов и символов подчеркивания, но первый символ не может быть цифрой или подчеркиванием. Следует также помнить, что имена переменных в РНР чувствительны к регистру, в отличие от ключевых слов.

Подробнее...
 

Константы

Константы

Константы объявляются в РНР при помощи функции define():

define(CONSTANT, value)

Первый параметр этой функции – имя константы, второй – её значение. При использовании константы на неё ссылаются по имени:

Подробнее...
 

Типы данных в РНР

Типы данных в РНР. Преобразование типов

Как уже было сказано, PHP предоставляет определенную гибкость в отношении типов переменных, т.е. с одной и той же переменной на протяжении программы можно работать и как со строкой, и как с числом. Однако, несмотря на это в РНР существуют набор основных типов данных, которые могут явно указываться при работе с переменными:

Подробнее...
 

Операторы PHP

Операторы

Арифметические операторы

+ Сложение
- Вычитание
* Умножение
/ Деление
% Вычисление остатка по модулю (к примеру: 5 % 2=1)
Подробнее...
 

Операторы языка PHP

Операторы выбора/ if...else

К операторам выбора относят: условный оператор (if...else) и переключатель (switch). Синтаксис условного оператора:
if(condition) statement 1 else statement 2

Подробнее...
 

Операторы выбора

Операторы выбора/ Переключатель switch

Переключатель switch является наиболее удобным средством для организации мультиветвления. Синтаксис переключателя таков:

Подробнее...
 

Операторы цикла

Операторы цикла

Операторы цикла задают многократное исполнение операторов в теле цикла. В PHP определены 4 разных оператора цикла:

Подробнее...
 

Операторы цикла/ While

Операторы цикла/ While

Оператор while называется оператором цикла с предусловием. При входе в цикл вычисляется выражение условие, и, если его значение отлично от нуля, выполняется тело цикла. Затем вычисления выражения условия и операторов тела цикла выполняется до тех пор, пока значение выражения условия не станет равным нулю. Оператором while удобно пользоваться для просмотра всевозможных последовательностей, если в конце них находится заранее известный символ. (Это очень удобно в C++, к примеру для определения длины строки, поскольку в С++, по определению, строка есть последовательность символов типа char, заканчивающаяся нулевым символом).

Подробнее...
 

Операторы цикла/ Do…while

Операторы цикла/ Do…while

Этот оператор называется оператором цикла с постусловием. При входе в цикл в любом случае выполняется тело цикла (т.е. цикл всегда будет выполнен хотя бы один раз), затем вычисляется условие, и если оно не равно 0, вновь выполняется тело цикла. В нижеследующем примере ноль всегда будет добавлен в список, независимо от условия (++$i <= $var):

Подробнее...
 

Операторы цикла/ For

Операторы цикла/ For

Как уже говорилось, итерационный цикл имеет следующий формат:

   for(expression1;expression2;expression3)
   {
      statements;
   }
Подробнее...
 

Строковые функции PHP

Строковые функции PHP

Несмотря на то, что эта глава написана скорее в духе справочника, материал, изложенный в ней, достаточно серьезен, хотя и не самый сложный для понимания. Умение грамотно работать со строками очень важно для программиста. Строковых функций в PHP немало, причем многие из них, так или иначе, просто дублируют друг друга. Однако, приемы работы с основными блоками функций (функции поиска и замены в тексте, функции удаления пробельных символом (trim-функции), функции форматного вывода) надо представлять очень четко.

Подробнее...
 

Функция htmlspecialchars

Строковые функции PHP

Функция htmlspecialchars

Производит преобразование спецсимволов в их HTML эквиваленты -htmlspecialchars()
Подробнее...
 

Функции поиска в тексте

Строковые функции PHP

substr()
strpos()
strrpos()
strstr()
strchr()
stristr()
strrchr()
substr_count()
strspn()
strcspn()
Подробнее...
 

Функции strlen(), chr() и ord()

Строковые функции PHP

strlen()
chr()
chr()">ord()
Подробнее...
 

Функции преобразования кодировки

Строковые функции PHP

convert_cyr_string()
bin2hex()
Подробнее...
 

Функции работы с бинарными данными

Строковые функции PHP

pack()
unpack()
Подробнее...
 

Функции работы с блоками текста

Строковые функции PHP

wordwrap()
str_replace()
substr_replace()
strtr()
stripslashes()
stripcslashes()
addslashes()
addcslashes()
quotemeta()
strrev()
Подробнее...
 

Функции объединения/разделения строк

Строковые функции PHP

str_repeat()
str_pad()
chunk_split()
strtok()
explode()
implode()
join()
Подробнее...
 

Функции сравнения строк

Строковые функции PHP

strcmp()
strncmp()
strcasecmp()
strncasecmp()
strnatcmp()
strnatcasecmp()
levenshtein()
Подробнее...
 

Функции работы с URL

Строковые функции PHP

parse_url()
parse_str()
rawurlencode()
rawurldecode()
base64_encode()
base64_decode()
Подробнее...
 

Функции преобразования регистра

Строковые функции PHP

strtolower()
strtoupper()
ucfirst()
ucwords()
Подробнее...
 

Заключение к главе 3

Строковые функции PHP

Ну вот мы и закончили главу о строковых функциях, чему я, честно говоря, рад, потому что она получилась достаточно большой. За бортом остались лишь функции кодирования, который официально считаются строковыми и пара-тройка функций, реального применение которым не может найти даже моя необузданная фантазия. Функции кодирования информации мы рассмотрим в разделе о криптографии, а вот по поводу той пары-тройки экзотических функций… Сначала я хотел отправить Вас к официальному руководству, но вот подумал и решил все-таки их привести. Просто, как говорится, для полноты картины.

Подробнее...
 

Массивы

Инициализация массивов



В PHP существует 2 метода инициализации массивов. Первый из них состоит в простом присвоении значений элементам массива:

<?
   $car[] = "passenger car";
   $car[] = "land-rover";
   echo($car[1]); // выводит "land-rover"
?>
Подробнее...
 

Цикл foreach для обхода массивов

Массивы



Обход массива в цикле в PHP4 можно организовать при помощи цикла foreach, который имеет следующий синтаксис:

foreach (array as [$key =>] $value)
{
   statements;
}
Подробнее...
 

Функция array_walk()

Массивы

array_walk()

Достаточно важная функция, позволяющая применять пользовательскую функцию к каждому элементу массива.

Синтаксис:

bool array_walk(array arr, callback func [, mixed userdata])
Подробнее...
 

Функции

Определения и вызовы функций



Функция объявляется при помощи ключевого слова function, после которого в фигурных скобках записываются различные операторы, составляющие тело функции:

function MyFunction()
{
 // операторы
}
Подробнее...
 

Область видимости переменных

Функции

Переменные в функциях имеют локальную область видимости. Это означает, что если даже локальная и внешняя переменные имеют одинаковые имена, то изменение локальной переменной никак не повлияет на внешнюю переменную:

Подробнее...
 

Время жизни переменной

Функции

Временем жизни переменной называется интервал выполнения программы, в течение которого она существует. Поскольку локальные переменные имеют своей областью видимости функцию, то время жизни локальной переменной определяется временем выполнения функции, в которой она объявлена. Это означает, что в разных функциях совершенно независимо друг от друга могут использоваться переменные с одинаковыми именами. Локальная переменная при каждом вызове функции инициализируется заново, поэтому функция-счетчик, в приведенном ниже примере всегда будет возвращать значение 1:

Подробнее...
 

Что такое рекурсия

Функции

Рекурсией называется такая конструкция, при которой функция вызывает саму себя. Различают прямую и косвенную рекурсии. Функция называется прямо рекурсивной, если содержит в своем теле вызов самой себя. Если же функция вызывает другую функцию, которая в свою очередь вызывает первую, то такая функция называется косвенно рекурсивной.

Подробнее...
 

Работа с файлами

Открытие файлов


Файл представляет собой последовательность байтов, хранящуюся на каком-либо физическом носителе информации. Каждый файл имеет абсолютный путь, по которому определяется его местонахождение. В качестве разделителя пути в Windows может использоваться как прямой (/), так и обратный (\) слеш. В других операционных системах используется только прямой слеш.

Подробнее...
 

Отображение файлов

Работа с файлами


Содержимое открытого файла можно отобразить в браузере с помощью функции fpassthru:

  int fpassthru (int file)
Подробнее...
 

Закрытие файлов

Работа с файлами


После того, как вы закончите работу с файлом его необходимо закрыть. Закрытие файлов осуществляется с помощью функции fclose:

  int fclose (int file)
Подробнее...
 

Чтение из файлов и запись в файлы

Работа с файлами


Чтение из файлов

Прочитать строку из открытого файла можно с помощью функции fread:

  string fread ( int file, int length )
Подробнее...
 

Копирование, переименование и удаление файлов

Работа с файлами

Копирование файлов осуществляется функцией copy:

  int copy ( string file1, string file2)
Подробнее...
 

Атрибуты файлов

Работа с файлами


Для получения дополнительной информации об атрибутах файла вы можете воспользоваться перечисленными ниже функциями.

Функция file_exists проверяет, существует ли файл и возвращает true, если файл существует и false в противном случае:

  bool file_exists ( string filename)
Подробнее...
 

Перемещение по файлам

Работа с файлами


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

Установка указателя текущей позиции в начало файла производится функцией rewind:

  int rewind ( int file)
Подробнее...
 

Работа с каталогами

Работа с файлами


Для установки текущего каталога применяется функция chdir:

  int chdir ( string directory)
Подробнее...
 

Методы PUT и POST

Работа с файлами


Методы HTTP PUT и HTTP POST предназначены для загрузки файлов на сервер.

Протокол HTTP предоставляет три метода для работы с информацией, находящейся на Web-сервере: GET, PUT и POST. Метод GET применяется для получения Web-страниц, при этом все переменные формы передаются в URL. Поскольку на многих Web-серверах установлено ограничение на максимальную длину URL (как правило, не более 1024), не стоит применять метод GET, если требуется передача данных большего объема.

Подробнее...
 

Регулярные выражения

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

Подробнее...
 

Групповой символ

Регулярные выражения


При создании регулярных выражений часто удобно пользоваться групповым символом точки ".", который объединяет два одиночных символа, за исключением символа \n. К примеру:

  .ок
Подробнее...
 

Ветви

Регулярные выражения


В регулярном выражении может быть несколько ветвей, которые разделяются символом |, действующим как оператор OR (ИЛИ). Т. е., если в выражении используются ветви, то для соответствия регулярного выражения какой-либо строке, достаточно, чтобы только одна из ветвей соответствовала этой строке:

"abc|абв"
Подробнее...
 

Исключающее выражение

Регулярные выражения


Для исключения последовательности символов из поиска перед этой ней ставится символ "^":

"[^а-я]"
Подробнее...
 

Квалификаторы

Регулярные выражения


Регулярное выражение можно уточнить при помощи квалификаторов - так называются символы +, ?, *. Квалификаторы говорят о том, сколько раз последовательность символов может встретиться в строке и указываются непосредственно после той части выражения, к которой они применяются:

Подробнее...
 

Границы

Регулярные выражения


Границы - это числа в фигурных скобках, указывающие количество вхождений в строку фрагмента выражения, непосредственно предшествующего границе:

Подробнее...
 

Подвыражения

Регулярные выражения


Иногда бывает удобно создавать регулярное выражение таким образом, чтобы можно было, к примеру, сказать, что, по крайней мере, за одной из строк "морская", следует точно строка "волна". Для этого регулярное выражение разбивают на подвыражения с помощью круглых скобок:

Подробнее...
 

Соответствие началу и концу строки

Регулярные выражения


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

Символ ^ соответствует началу строки:

"^xy"
Подробнее...
 

Сопоставление со специальными символами

Регулярные выражения


В тех случаях, когда нужно сопоставить выражение строке, в которой встречаются спецсимволы, о которых говорилось выше в этой главе, такие как $, ^, { и т. д., перед ними ставится символ обратной косой черты (\). Например, для того, чтобы найти в строке символ $, в регулярном выражении нужно написать "\$".

Подробнее...
 

Классы символов

Регулярные выражения


Классами символов называются сокращенные обозначения для предопределенных символов.

Подробнее...
 

Функции для работы с регулярными выражениями

Регулярные выражения


PHP поддерживает два вида записи регулярных выражений: POSIX и Perl. POSIX расшифровывается как Portable Operating System Interface (интерфейс переносной операционной системы) и является стандартом для интерфейсов приложений. В этом разделе мы будем работать с регулярными выражениями в стиле POSIX, а позже рассмотрим Perl-совместимые регулярные выражения.

Подробнее...
 

Perl-совместимые регулярные выражения

Регулярные выражения


PHP поддерживает ряд функций для работы с Perl-совместимыми регулярными выражениями (PCRE - Perl Compatible Regular Expression). Такие выражения заключаются в ограничители, в качестве которых, как правило, используется прямой слеш:

/mail/
Подробнее...
 

Cookies

Сессии и cookie в PHP

setcookie() 
time() 
mktime() 
Подробнее...
 

Работа с FTP средствами PHP

Основные возможности PHP при работе с FTP

ftp_connect() 
ftp_get() 
ftp_login() 
ftp_quit() 
Подробнее...
 

Пишем гостевую книгу на PHP (вариант на файлах)


Сейчас мы разработаем приложение "Гостевая книга на PHP".

Сообщения будут храниться в файлах, которые расположены в директории RECORDS (позже мы разработаем вариант гостевой книги, основанный на хранении сообщений в базе данных). Код размещен в двух файлах: index.php (отображение сообщений) и addrec.php (добавление сообщений, их проверка и запись в файл).

Подробнее...
 

PHP и MySQL. Совместная работа

Что такое MySQL. Взаимодействие с PHP


Итак, для начала ответим на вопрос: что такое MySQL?

MySQL – это одна из самых популярных и самых распространенных СУБД (система управления базами данных) в интернете. Она не предназначена для работы с большими объемами информации, но ее применение идеально для интернет сайтов, как небольших, так и достаточно крупных.

Подробнее...
 

Реляционные базы данных

PHP и MySQL. Совместная работа


Задача длительного хранения и обработки информации появилась практически сразу с появлением первых компьютеров. Для решения этой задачи в конце 60-х годов были разработаны специализированные программы, получившие название систем управления базами данных (СУБД). СУБД проделали длительный путь эволюции от системы управления файлами, через иерархические и сетевые базы данных. В конце 80-х годов доминирующей стала система управления реляционными базами данных (СУРБД). С этого времени такие СУБД стали стандартом де-факто, и для того, чтобы унифицировать работу с ними, был разработан структурированный язык запросов (SQL), который представляет собой язык управления именно реляционными базами данных.

Подробнее...
 

Индексы

PHP и MySQL. Совместная работа

Определение

Индекс - это отсортированный список значений полей, предназначенный для ускорения поиска в базе данных.

Подробнее...
 

Первичные ключи

PHP и MySQL. Совместная работа


Первичный ключ (primary key) представляет собой один из примеров уникальных индексов и применяется для уникальной идентификации записей таблицы. Никакие из двух записей таблицы не могут иметь одинаковых значений первичного ключа. Первичный ключ обычно сокращенно обозначают как PK (primary key).

Подробнее...
 

Способы задания первичного ключа

PHP и MySQL. Совместная работа


По способу задания первичных ключей различают логические (естественные) ключи и суррогатные (искусственные).

Для логического задания первичного ключа нужно выбрать в базе данных то, что естественным образом определяет запись. Примером такого ключа является номер паспорта в базе данных о паспортных данных жителей.

Подробнее...
 

Нормализация базы данных

Взаимодействие PHP и MySQL


Определение:

Схемой базы данных называется структура связей между полями и таблицами.

Определение:

Подробнее...
 

Работа с сервером MySQL

Взаимодействие PHP и MySQL


В этом разделе мы поговорим о том, как работать с клиентской программой mysql, с помощью которой можно подсоединяться к MySQL-серверу, выполнять SQL-запросы и просматривать результаты этих запросов. Текст этого раздела рассчитан на то, что на вашем компьютере уже установлена утилита mysql и существует связь с сервером MySQL.

Подробнее...
 

Язык SQL

Взаимодействие PHP и MySQL


Структурированный язык запросов SQL позволяет производить различные операции с базами данных: создавать таблицы, помещать, обновлять и удалять из них данные, производить запросы из таблиц и т.д. Далее мы последовательно рассмотрим все эти операторы.

Подробнее...
 

Голосование



продажа коммерческой недвижимости, точные адреса. / /
порна

Populiari trumpalaike automobiliu nuoma ilgam laikotarpiui