- •Введение.
- •Лекция1.Введениевклиент-серверныеСубд.
- •InterbaseSqlServer.Общиесведения.
- •Платформы
- •Типыприложений
- •ФайлыбазыданныхInterBase
- •Лекция3.Триггерыихранимыепроцедуры
- •Хранимыепроцедуры(StoredProcedures)
- •Терминаторы
- •Заголовок
- •Телопроцедуры
- •Блоккодапроцедуры
- •Операторприсваивания
- •УсловныйоператорIf…then…else
- •ОператорSelect
- •ЦиклForselecTиSuspend
- •ЦиклWhile…do
- •ОператорыInsert,update,delete
- •ОператорExecuteprocedure
- •Исключения
- •СобытияиоператорPost_event
- •Измененияиудаленияхранимыхпроцедур
- •Примерысозданияивызовахранимыхпроцедур
- •Генераторы
- •Увеличениешагагенератора
- •Триггеры
- •ПеременныеNeWиOld
- •Реализацияавтоинкрементныхключевыхполей
- •Лекция4.Транзакции.Механизмтранзакций
- •Атомарность(Atomicity)
- •Согласованность(Consistency)
- •Изолированность(Isolation)
- •Устойчивость(Durability)
- •Неявныйиявныйстарттранзакций
- •Кактранзакцияработает
- •Уровниизолированноститранзакций
- •Параметрытранзакций
- •Компонентыдоступакданнымивизуальныекомпоненты МеханизмыдоступакБд
- •ПроблемырусскихбукввInterBase
- •Лекция5. Основы языка php. Функции php для работы с субд ИсторияPhp
- •ВозможностиPhp
- •Основнойсинтаксис
- •Разделениеинструкций
- •Комментарии
- •Переменные,константыиоператоры
- •Переменные
- •Константы
- •Операторы
- •Типыданных
- •Типboolean(булевилилогическийтип)
- •Типinteger(целые)
- •Типfloat(числасплавающейточкой)
- •Типstring(строки)
- •Одинарныекавычки
- •Двойныекавычки
- •Типarray(массив)
- •Определениеприпомощиarray()
- •Определениеспомощьюсинтаксисаквадратныхскобок
- •Типobject(объекты)
- •Типresource(ресурсы)
- •Решениезадачи
- •Построениеинтерфейсадлядобавленияинформации
- •Установкасоединения
- •Выборбазыданных
- •Получениеспискаполейтаблицы
- •Отображениеспискаполейвhtml-форму
- •Записьданныхвбазуданных
- •Отображениеданных,хранящихсявMySql
- •Заключение
Типfloat(числасплавающейточкой)
Числасплавающейточкой(онижечисладвойнойточностиилидействительныечисла)могутбытьопределеныприпомощилюбогоизследующихсинтаксисов:
<?php
$a=1.234;
$b=1.2e3;
$c=7E-10;
?>
Размерчисласплавающейточкойзависитотплатформы,хотямаксимум,какправило,~1.8e308сточностьюоколо14десятичныхцифр.
Типstring(строки)
Строка–этонаборсимволов.ВPHPсимвол–этотожесамое,чтобайт,этозначит,чтосуществуетровно256различныхсимволов.Этотакжеозначает,чтоPHPнеимеетвстроеннойподдержкиUnicode.ВPHPпрактическинесуществуетограниченийнаразмерстрок,поэтомунетабсолютноникакихпричинбеспокоитьсяобихдлине.
СтрокавPHPможетбытьопределенатремяразличнымиспособами:
спомощьюодинарныхкавычек;
спомощьюдвойныхкавычек;
heredoc-синтаксисом.
Одинарныекавычки
Простейшийспособопределитьстроку–этозаключитьееводинарныекавычки"'".Чтобыиспользоватьодинарнуюкавычкувнутристроки,какивомногихдругихязыках,переднейнеобходимопоставитьсимволобратнойкосойчерты"\",т.е.экранироватьее.Еслиобратнаякосаячертадолжнаидтипередодинарнойкавычкойлибобытьвконцестроки,необходимопродублироватьее"\\'".
Есливнутристроки,заключеннойводинарныекавычки,обратныйслэш"\"встречаетсяпередлюбымдругимсимволом(отличнымот"\"и"'"),тоонрассматриваетсякакобычныйсимволивыводится,какивсеостальные.Поэтомуобратнуюкосуючертунеобходимоэкранировать,толькоеслионанаходитсявконцестроки,передзакрывающейкавычкой.
ВPHPсуществуетрядкомбинацийсимволов,начинающихсяссимволаобратнойкосойчерты.Ихназываютуправляющимипоследовательностями,иониимеютспециальныезначения,окоторыхмырасскажемнемногопозднее.Таквот,вотличиеотдвухдругихсинтаксисов,переменныеиуправляющиепоследовательностидляспециальныхсимволов,встречающиесявстроках,заключенныхводинарныекавычки,необрабатываются.
<?php
echo'Такжевыможетевставлятьвстроки
символновойстрокитакимобразом,
посколькуэтонормально';
//Выведет:Чтобывывести'надо
//переднейпоставить\
echo'Чтобывывести\'надоперед'.
'нейпоставить\\';
//Выведет:ВыхотитеудалитьC:\*.*?
echo'ВыхотитеудалитьC:\\*.*?';
//Выведет:Этоневставит:\nновуюстроку
echo'Этоневставит:\nновуюстроку';
//Выведет:Переменные$expandтакже
//$eitherнеподставляются
echo'Переменные$expandтакже$either'.
'неподставляются';
?>
Пример2.7.Использованиеуправляющихпоследовательностей
Двойныекавычки
Еслистроказаключенавдвойныекавычки""",PHPраспознаетбольшееколичествоуправляющихпоследовательностейдляспециальныхсимволов.Некоторыеизнихприведенывтаблице2.7.
Таблица2.7.Управляющиепоследовательности |
|
Последовательность |
Значение |
\n |
Новаястрока(LFили0x0A(10)вASCII) |
\r |
Возвраткаретки(CRили0x0D(13)вASCII) |
\t |
Горизонтальнаятабуляция(HTили0x09(9)вASCII) |
\\ |
Обратнаякосаячерта |
\$ |
Знакдоллара |
\" |
Двойнаякавычка |
Повторяем,есливызахотитеэкранироватьлюбойдругойсимвол,обратнаякосаячертатакжебудетнапечатана!
Самымважнымсвойствомстроквдвойныхкавычкахявляетсяобработкапеременных.
Heredoc
Другойспособопределениястрок–этоиспользованиеheredoc-синтаксиса.Вэтомслучаестрокадолжнаначинатьсяссимвола<<<,послекоторогоидетидентификатор.Заканчиваетсястрокаэтимжеидентификатором.Закрывающийидентификатордолженначинатьсявпервомстолбцестроки.Крометого,идентификатордолженсоответствоватьтемжеправиламименования,чтоивсеостальныеметкивPHP:содержатьтолькобуквенно-цифровыесимволыизнакподчеркиванияиначинатьсянесцифрыилизнакаподчеркивания.
Heredoc-текстведетсебятакже,какистрокавдвойныхкавычках,приэтомихнеимея.Этоозначает,чтовамнетнеобходимостиэкранироватькавычкивheredoc,новыпо-прежнемуможетеиспользоватьперечисленныевышеуправляющиепоследовательности.Переменныевнутриheredocтожеобрабатываются.
<?php
$str=<<<EOD
Примерстроки,охватывающейнесколько
строчек,сиспользованием
heredoc-синтаксиса
EOD;
//Здесьидентификатор–EOD.Ниже
//идентификаторEOD
$name='Вася';
echo<<<EOD
Менязовут"$name".
EOD;
//этовыведет:Менязовут"Вася".
?>
Пример2.8.Использованиеheredoc-синтаксиса
Замечание:ПоддержкаheredocбыладобавленавPHP4.