
- •Установка и настройка по
- •Установка Apache 1.3.29 под Windows xp
- •Установка php 4.3.4 под Windows
- •Дистрибутив Денвер
- •Первая php-программа
- •Синтаксис
- •Переменные, константы и операторы
- •Переменные
- •Константы
- •Типы данных
- •Тип boolean (булев или логический тип)
- •Тип integer (целые)
- •Тип float (числа с плавающей точкой)
- •Тип string (строки)
- •Одинарные кавычки
- •Двойные кавычки
- •Heredoc
- •Тип array (массив)
- •Определение при помощи array()
- •Определение с помощью синтаксиса квадратных скобок
- •Управляющие конструкции Условные операторы Оператор if
- •Оператор else
- •Оператор elseif
- •Do... While
- •Foreach
- •Операторы передачи управления
- •Continue
- •Операторы включения
- •Include
- •Require
- •Обработка запросов с помощью php
- •Протокол http и способы передачи данных на сервер
- •Форма запроса клиента
- •Использование html-форм для передачи данных на сервер
- •Для метода get
- •Для метода post
- •Обработка запросов с помощью php
- •Пример обработки запроса с помощью php
- •Заключение
- •Функции в php
- •Аргументы функций
- •Списки аргументов переменной длины
- •Возвращаемые значения
- •Возвращение ссылки
- •Переменные функции
- •Объекты и классы в php
- •Инициализация переменных
- •Объекты
- •Наследование extends
- •Конструкторы
- •Оператор ::
- •Оператор parent
- •Объектная модель php5
- •Решение задачи
- •Заключение
- •Функция in_array
- •Функция array_search
- •Функция array_keys
- •Функция array_unique
- •Сортировка массива по ключам
- •Сортировка с помощью функции, заданной пользователем
- •Работа со строками
- •Выделение подстроки Функция strstr
- •Функция substr
- •Функция substr_replace
- •Проверка существования файла
- •Функция file_exists
- •Функция is_writable
- •Функция is_readable
- •Базы данных и субд. Введение в sql
- •Взаимодействие php и MySql
- •Выбор базы данных
- •Получение списка полей таблицы
- •Отображение списка полей в html-форму
- •Авторизация доступа с помощью сессий
- •Регулярные выражения
- •Взаимодействие php и xml
- •Обход дерева объектов
- •Добавление новых элементов в xml-документ
- •Заключение
- •Использование шаблонов в php
Переменные, константы и операторы
Важным элементом каждого языка являются переменные,константыиоператоры, применяемые к этимпеременнымиконстантам. Рассмотрим, как выделяются и обрабатываются эти элементы в PHP.
Переменные
Переменнаяв PHP обозначается знаком доллара, за которым следует ее имя. Например:
$my_var
Имя переменнойчувствительно к регистру, т.е.переменные $my_varи$My_varразличны.
Имена переменныхсоответствуют тем же правилам, что и остальные наименования в PHP: правильное имяпеременнойдолжно начинаться с буквы или символа подчеркивания с последующими в любом количестве буквами, цифрами или символами подчеркивания.
В PHP 3 переменныевсегда присваивались по значению. То есть когда вы присваиваете выражениепеременной, все значения оригинального выражения копируется в этупеременную. Это означает, к примеру, что после присвоения однойпеременнойзначения другой изменение одной из них не влияет на значение другой.
<?php
$first = ' Text '; // Присваиваем $first
// значение
// ' Text '
$second = $first; // Присваиваем $second
// значение
// переменной $first
$first = ' New text '; // Изменяем
// значение
// $first
// на ' New text '
echo "Переменая с именем first " .
"равна $first <br>";
// выводим значение $first
echo "Переменая с именем second " .
"равна $second";
// выводим значение $second
?>
Пример 2.2. Присваивание по значению (html, txt)
Результат работы этого скрипта будет следующим:
Переменная с именем first равна New text
Переменная с именем second равна Text
PHP 4, кроме этого, предлагает еще один способ присвоения значений переменным: присвоение по ссылке. Для того чтобы присвоить значениепеременнойпо ссылке, это значение должно иметь имя, т.е. оно должно быть представлено какой-либопеременной. Чтобы указать, что значение однойпеременнойприсваивается другойпеременнойпо ссылке, нужно перед именем первойпеременнойпоставить знак амперсанд&.
Рассмотрим тот же пример, что и выше, только будем присваивать значение переменной first переменной secondпо ссылке:
<?php
$first = ' Text '; // Присваиваем $first
// значение ' Text '
$second = &$first;
/* Делаем ссылку на $first через $second.
Теперь значения этих переменных
будут всегда совпадать */
// Изменим значение $first
// на ' New text '
$first = ' New text ';
echo "Переменная с именем first " .
"равна $first <br>";
// выведем значения обеих переменных
echo "Переменная с именем second " .
"равна $second";
?>
Пример 2.3. Присваивание по ссылке (html, txt)
Этот скрипт выведет следующее:
Переменная с именем first равна New text.
Переменная с именем second равна New text.
То есть вместе с переменной$first изменилась ипеременная $second.
Константы
Для хранения постоянных величин, т.е. таких величин, значение которых не меняется в ходе выполнения скрипта, используются константы. Такими величинами могут быть математическиеконстанты, пароли, пути к файлам и т.п. Основное отличиеконстантыотпеременнойсостоит в том, что ей нельзя присвоить значение больше одного раза и ее значение нельзя аннулировать после ее объявления. Кроме того, уконстантынет приставки в виде знака доллара и ее нельзя определить простым присваиванием значения. Как же тогда можно определитьконстанту? Для этого существует специальная функцияdefine(). Ее синтаксис таков:
define("Имя_константы",
"Значение_константы",
[Нечувствительность_к_регистру])
По умолчанию имена константчувствительны к регистру. Для каждойконстантыэто можно изменить, указав в качестве значения аргументаНечувствительность_к_региструзначениеTrue. Существует соглашение, по которому именаконстантвсегда пишутся в верхнем регистре.
Получить значение константыможно, указав ее имя. В отличие отпеременных, не нужно предварять имяконстантысимволом$. Кроме того, для получения значенияконстантыможно использовать функциюconstant()с именемконстантыв качестве параметра.
<?php
// определяем константу
// PASSWORD
define("PASSWORD","qwerty");
// определяем регистронезависимую
// константу PI со значением 3.14
define("PI","3.14", True);
// выведет значение константы PASSWORD,
// т.е. qwerty
echo (PASSWORD);
// тоже выведет qwerty
echo constant("PASSWORD");
echo (password);
/* выведет password и предупреждение,
поскольку мы ввели регистрозависимую
константу PASSWORD */
echo pi;
// выведет 3.14, поскольку константа PI
// регистронезависима по определению
?>
Пример 2.4. Константы в PHP (html, txt)
Кроме переменных, объявляемых пользователем, о которых мы только что рассказали, в PHP существует рядконстант, определяемых самим интерпретатором. Например,константа __FILE__хранит имя файла программы (и путь к нему), которая выполняется в данный момент,__FUNCTION__содержит имя функции,__CLASS__– имя класса,PHP_VERSION– версия интерпретатора PHP. Полный список предопределенныхконстантможно получить, прочитав руководство по PHP.
Операторы Операторыпозволяют выполнять различные действия спеременными,константамии выражениями. Мы еще не упоминали о том, что такое выражение. Выражение можно определить как все, что угодно, что имеет значение.Переменныеиконстанты– это основные и наиболее простые формы выражений. Существует множество операций (и соответствующих имоператоров), которые можно производить с выражениями. Рассмотрим некоторые из них подробнее.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|