Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции БДиСУБД.docx
Скачиваний:
17
Добавлен:
19.11.2019
Размер:
494.91 Кб
Скачать

ВозможностиPhp

"PHPможетвсе",–заявляютегосоздатели.ВпервуюочередьPHPиспользуетсядлясозданияскриптов,работающихнасторонесервера,дляэтогоего,собственно,ипридумали.PHPспособенрешатьтежезадачи,чтоилюбыедругиеCGI-скрипты,втомчислеобрабатыватьданныеhtml-форм,динамическигенерироватьhtmlстраницыит.п.Ноестьидругиеобласти,гдеможетиспользоватьсяPHP.ВсеговыделяюттриосновныеобластипримененияPHP.

  • Перваяобласть,какужеговорилось,–этосозданиеприложений(скриптов),которыеисполняютсянасторонесервера.PHPнаиболееширокоиспользуетсяименнодлясозданиятакогородаскриптов.Длятогочтобыработатьтакимобразом,понадобитсяPHP-парсер(т.е.обработчикphp-скриптовweb-сервердляобработкискрипта,браузердляпросмотрарезультатовработыскрипта,ну,и,конечно,какой-либотекстовыйредактордлянаписаниясамогоphp-кода.ПарсерPHPраспространяетсяввидеCGI-программыилисерверногомодуля.Какустановитьегоиweb-сервернасвойкомпьютер,мырассмотримнемногопозднее.Вэтомкурсемыбудемобсуждать,какправило,созданиеименносерверныхприложений,какпримериспользованияязыкаPHP.

  • Втораяобласть–этосозданиескриптов,выполняющихсявкоманднойстроке.ТоестьспомощьюPHPможносоздаватьтакиескрипты,которыебудутисполняться,внезависимостиотweb-сервераибраузера,наконкретноймашине.ДлятакойработыпотребуетсялишьпарсерPHP(вэтомслучаеегоназываютинтерпретаторомкоманднойстроки(cli,commandlineinterpreter)).Этотспособработыподходит,например,дляскриптов,которыедолжнывыполнятьсярегулярноспомощьюразличныхпланировщиковзадачилидлярешениязадачпростойобработкитекста.

  • Ипоследняяобласть–этосозданиеGUI-приложений(графическихинтерфейсов),выполняющихсянасторонеклиента.ВпринципеэтонесамыйлучшийспособиспользоватьPHP,особеннодляначинающих,ноесливыужедоскональноизучилиPHP,тотакиевозможностиязыкамогутоказатьсявесьмаполезны.ДляпримененияPHPвэтойобластипотребуетсяспециальныйинструмент–PHP-GTK,которыйявляетсярасширениемPHP.

Итак,областьпримененияPHPдостаточнообширнаиразнообразна.Темнеменеесуществуетмножестводругихязыковпрограммирования,способныхрешатьпохожиезадачи.ПочемустоитизучатьPHP?Чтоэтонамдает?Во-первых,PHPоченьпроствизучении.Достаточноознакомитьсялишьсосновнымиправиламисинтаксисаипринципамиегоработы,иможноначинатьписатьсобственныепрограммы,причембратьсязатакиезадачи,решениекоторыхнадругомязыкетребовалобысерьезнойподготовки.

Во-вторых,PHPподдерживаетсяпочтинавсехизвестныхплатформах,почтивовсехоперационныхсистемахинасамыхразныхсерверах.Этотожеоченьважно.Врядликому-тозахочетсяпереходить,например,отработыподWindowsкработеподLinuxилиотсервераIISксерверуApacheтолькодлятого,чтобыизучитьещеодинязыкпрограммирования.

ВPHPсочетаютсядвесамыепопулярныепарадигмыпрограммирования–объектнаяипроцедурная.ВPHP4болееполноподдерживаетсяпроцедурноепрограммирование,ноестьвозможностьписатьпрограммыивобъектномстиле.УжевпервыхпробныхверсияхPHP5большинствонедочетоввреализацииобъектно-ориентированноймоделиязыка,существующихвPHP4,устранены.Такимобразом,можновыбратьнаиболеепривычныйстильработы.

ЕслиговоритьовозможностяхсегодняшнегоPHP,тоонивыходятдалекозарамкитех,чтобылиреализованывегопервыхверсиях.СпомощьюPHPможносоздаватьизображения,PDF-файлы,флэш-ролики,внеговключенаподдержкабольшогочисласовременныхбазданных,встроеныфункциидляработыстекстовымиданнымилюбыхформатов,включаяXML,ифункциидляработысфайловойсистемой.PHPподдерживаетвзаимодействиесразличнымисервисамипосредствомсоответствующихпротоколов,такихкакпротоколуправлениядоступомкдиректориямLDAP,протоколработыссетевымоборудованиемSNMP,протоколыпередачисообщенийIMAP,NNTPиPOP3,протоколпередачигипертекстаHTTPит.д.

Обращаявниманиенавзаимодействиемеждуразличнымиязыками,следуетупомянутьоподдержкеобъектовJavaивозможностиихиспользованиявкачествеобъектовPHP.ДлядоступакудаленнымобъектамможноиспользоватьрасширениеCORBA.

ДляработыстекстовойинформациейPHPунаследовал(снебольшимиизменениями)механизмыработысрегулярнымивыражениямиизязыкаPerlиUNIX-систем.ДляобработкиXML-документовможноиспользоватькакстандартыDOMиSAX,такиAPIдляXSLT-трансформаций.