Типы данных php |
Дневник |
В отличие от полей таблиц, любая переменная РНР может содержать данные различных типов. Можно, например, объявить переменную, присвоив ей число, а потом ей же присвоить строковое или логическое значение, и интерпретатор РНР все "слопает". Хотя, конечно, такого лучше не допускать — это плохой стиль программирования.
Давайте получше познакомимся с типами данных, поддерживаемыми РНР. Их далеко не так много, как типов, поддерживаемых серверами данных.
Логический
Логический тип представляет только два значения: "истина" (true) и "ложь" (false). Эти значения записываются ключевыми словами языка РНР true и false соответственно.
$flag = true;
Целочисленный
Целочисленный тип представляет, как ясно из названия, целые числа от~2 147 483 648 до 2 147 483 647, например:
$counter = 10; $delta = -193;
По умолчанию целые числа задаются в десятичной системе счисления. Если нужно задать число в восьмеричной или шестнадцатеричной системе счисления, достаточно предварить его знаком O и Ох соответственно:
$octal_number = 0123;
$hex number = 0x4F;
С плавающей точкой
Тип с плавающей точкой представляет дробные числа от -1,79769313486232*10308 до -2,2250738585072*10"308, 0 и от 2,2250738585072*Ю-308 до 1,79769313486232*10308 с точностью примерно до 14-го знака после запятой, например:
$square = 10.56;
Заметим, что вместо знака запятой для представления числа в коде РНР используется точка.
Для представления чисел в нормализованном виде {<мантисса>*\0<""ря')"к>) можно использовать специальный синтаксис вида <мантисса>Е<порядок>:
$distance = 2.648E+12;
В таком виде представлено число 2,648*1012. Обратим внимание, что знак + в значении порядка необходим.
А так представлено число 1*10"3:
$millimeter = 1E-3;
Строковый
Строковый тип представляет строки текста практически неограниченного размера (по крайней мере, так написано в документации по РНР). Строковые значения должны быть взяты в двойные кавычки. Внутри строк можно использовать любые символы, которые могут быть выведены на экран.
$output = "Привет!";
Замечание
Иногда строковые значения берутся в одинарные кавычки. Однако для таких строк не доступны некоторые возможности РНР.
РНР также предоставляет несколько специальных символов, которые могут быть использованы в строках. Эти символы либо выполняют особые действия, либо не могут быть включены в строки обычным образом. Все они перечислены в табл. 1.
Таблица 1. Специальные символы РНР
Специальный символ |
Описание |
\n |
Перевод строки |
\r |
Возврат каретки |
Специальный символ |
Описание |
\t |
Горизонтальная табуляция |
\\ |
Обратный слэш (\) |
\$ |
Знак доллара |
\" |
Двойная кавычка |
\<код> |
Символ с заданным восьмеричным кодом |
\х<код> |
Символ с заданным шестнадцатеричным кодом |
Здесь нужно дать некоторые пояснения.
Использование символов обратного слэша, доллара и двойной кавычки в строках не допускается — только соответствующие им специальные символы. Например, это неправильное выражение:
$output = "Гостиница "Волжская"";
т. к. внутри строки не должны присутствовать двойные кавычки. Нужно предварить каждый символ двойных кавычек обратным слэшем (\"), вот так:
$output = "Гостиница \"Волжская\"";
Знаки возврата каретки и перевода строки, следующие друг за другом, — \г\п— позволят начать вывод данных с помощью оператора echo с новой строки. Например, сценарий:
echo "Начнем ";
echo "вывод\г\п";
echo "с новой строки!!!";
выведет на экран следующую фразу:
Начнем вывод
с новой строки!!!
Обратим внимание, что первое и второе выражения этого сценария выполнили вывод в одну и ту же строку.
NULL
Тип NULL означает, что переменная не содержит никакого значения. Это может случиться, если мы пытаемся получить значение переменной, которая еще не объявлена или уже удалена из памяти Также мы можем прямо присвоить переменной значение NULL, воспользовавшись ключевым словом null:
$null_value = NULL;
|
Переменные php |
Дневник |
Переменные
Переменная — это участок памяти компьютера, отведенный для хранения каких-то данных: аргументов или результатов выполнения операторов. Программист может писать выражения, помещающие какие-либо данные в переменные или извлекающие их оттуда.
Каждая переменная должна иметь уникальное имя. Это имя должно всегда начинаться символом доллара и содержать только буквы латинского алфавита, цифры и знаки подчеркивания. Причем следующим после знака доллара символом обязательно должна быть буква или знак подчеркивания. Также имя переменной не должно совпадать с ключевыми словами РНР. Длина имени переменной не ограничена, но лучше делать их как можно короче и как можно понятнее.
Вот несколько примеров правильно написанных имен переменных:
$var
$extended_result2 $_temp
А это — неправильные имена:
$2result
$extended output $расширенный вывод
В первом из этих имен после знака доллара идет цифра, второе содержит пробел, а третье набрано русскими буквами. И первое, и второе, и третье недопустимо.
В отличие от ключевых слов, имена переменных в РНР чувствительны к регистру. Так, $var и $var — это разные переменные.
А теперь рассмотрим сценарий.
$а = 2; $b = 3;
Здесь мы присваиваем числовые значения двум переменным: $а и $ь. Делается это с помощью особого оператора простого присваивания =. Слева от него записывается имя переменной, а справа — значение, которое должно быть ей присвоено.
Поскольку переменных $а и $ь еще не существует, интерпретатор РНР создаст или, как говорят программисты, объявит их. Объявление переменной происходит при первом присвоении ей значения.
$с = $а + $b;
Здесь мы объявляем третью переменную — $с — и присваиваем ей результат вычисления выражения 2 + 3.
echo $c;
А в этом, последнем, выражении нашего сценария оператор echo извлекает значение переменной $с (это будет сумма 2 и 3 — 5) и выводит его на экран.
Осталось сказать, что переменная, объявленная в каком-либо сценарии серверной страницы РНР, доступна во всех сценариях, находящихся в этой странице. Так, если мы напишем два сценария в коде Web-страницы (сам HTML-код опущен):
<?php $a = "Test!!!"; ?>
<?php echo $a; ?>
то они оба выполнятся правильно. Однако в других серверных страницах эти переменные доступны не будут — это следует помнить.
|
Операторы, аргументы и выражения |
Дневник |
Оператор вывода ECHO. Он принимает один аргумент - строку - и выводит ее на экран, точнее в то место кода HTML, где встритился. (В принципе, это одно и то же, т.к. сформированная серверной программой Web-страница всеравно попадает на экран посетителю сайта.) Пора дать определения оператора и аргумента.
Оператор - это команда языка PHP, выполняющая какое-либо действие над переданными ему данными (аргументом) или самим сценарием.
Операторы в PHP бывают разные. Мы уже знакомы с оператором вывода данных ECHO. Существуют также арифметические операторы, выполняющие элементраные действия над числами: Сложение, вычитание, умножение и деление.
Вот пример сценария, использующего арифметические операторы:
echo 2 + 2;
Здесь мы видим оператор сложения +, который принимает два аргументы - числовые значения 2 и 2. Сложим вих, он возвращает полученную сумму (результат), который в свою очередь, принимает оператор echo в качестве аргумента. Заметим, что числовые значения не берутся в кавычки.
Приведенный ранее сценарий PHP состоит из одного выражения. Выражение - это фрагмент кода PHP, выполняющий одно законченное действие. Так, выражение
echo 2+2;
выполняет одно законченное действие: складывает два числа и выводит сумму на экран. Каждое выражение обязательно должно завершаться знаком точки с запятой. Точка с запятой - это знак конца выражения; встретив его, интерпретатор PHP считает , что выражение завершено, и его нужно выполнить. Единсвтенное исключение - наличие в сценарии только одного выражения (в теге <?php...?>; там точку с запятой можно упустить.
Выражения - это своего рода молекулы, из которых собирается сценарий. Операторы и их аргументы (а также функции, которые мы рассмотрим потом) - суть атомы, стандартные элементы языка PHP, из которых мы собираем наши выражения.
Например, этот сценарий состоит из четырех выражений:
$a=2;
$b=3;
$c=$a+$b;
echo $c;
осталось сказать, что для представления операторов язык PHP так же как и SQL, использует особые зарезервиованные слова, называемые ключевыми. Причем регистр , в котором набраны буквы ключевых слов, не играет роли. Так, можно записать echo, Echo или ECHO - и это будит один и тот же оператор вывода.
|
Основные понятия РНР |
Дневник |
Написание сценариев PHP
фрагменты программного кода (сценарии) PHP записываются прямо в коде HTML Web- страниц.
При этом они помещаются внутрь особого парного тега <?php... ?>.
Давайте наберем в блокноте такой HTML-код, содержащий небольшой сценарий PHP:
<HTML>
<HEAD>
<TITLE>ПРОБА СИЛ В php </TITLE>
</HEAD>
<BODY>
<?php
echo "<P>Привет!</P>";
?>
</BODY>
</HTML>
Оператор вывода ECHO выводит строковое значение, указанное после него, в то место страницы, где сам находится. ЧТо касается самого строкового значения, то оно заключено в двойные кавычки (это важно!) и содержит HTML-код обычного абзаца, содержащего слово "Привет!".
Все серверные страницы PHP дожны обязательно иметь расширение php, иначе Web-сервер примет их за обычные Web-страницы и отправит Web-обозревателю, не обработав.
Нужно еще сказать, что серверные Web-страницы PHP могут вообще не содержать кода HTML - только сценарии, точнее, единственный сценарий PHP . ТАкое встречается, и нередко. Но даже в подобном случае сценарий нужно помещать внутрь тега <?php... ?>, иначе PHP его не обработает.
|
Краткий курс языка РНР |
Дневник |
Cерверная программа представляет собой набор серверных страниц — обычных Web-страниц, содержащих фрагменты программного кода, обрабатывающего эти данные. Встретив такой фрагмент, Web-сервер передаст его обработчику серверных страниц, получит от него результат в виде обычного кода HTML и вставит его точно в то место, где встретился данный фрагмент программного кода.
Технология для создания серверных страниц может основана на использовании языка РНР. Она дает достаточно возможностей для создания сложных сайтов, весьма производительна, бесплатна (даже ее исходные тексты открыты!) и, вдобавок, замечательно работает в "связке" с сервером данных MySQL. (Вообще-то, РНР может работать с очень многими серверами данных, а также поддерживает ODBC.) Другие же технологии, имеющиеся на рынке, либо являются коммерческими, либо привязаны к какому-то одному Web-серверу.
|
ТАБЛИЦА ОСНОВНЫХ ТЕГОВ ЯЗЫКА HTML |
Дневник |
ТАБЛИЦА ОСНОВНЫХ ТЕГОВ ЯЗЫКА HTML |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ТАБЛИЦА ОСНОВНЫХ ТЕГОВ ЯЗЫКА HTML
|
|
Страницы: | [1] |