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

Лекция5. Основы языка php. Функции php для работы с субд ИсторияPhp

ЯзыкPHPбылразработанкакинструментдлярешениячистопрактическихзадач.Егосоздатель,РасмусЛердорф,хотелзнать,сколькочеловекчитаютегоonline-резюме,инаписалдляэтогопростенькуюCGI-оболочкунаязыкеPerl,т.е.этобылнаборPerl-скриптов,предназначенныхисключительнодляопределеннойцели–сборастатистикипосещений.

Длясправки.CGI(CommonGatewayInterface–общийинтерфейсшлюзов)являетсястандартом,которыйпредназначендлясозданиясерверныхприложений,работающихпопротоколуHTTP.Такиеприложения(ихназываютшлюзамиилиCGI-программами)запускаютсясерверомврежимереальноговремени.СерверпередаетзапросыпользователяCGI-программе,котораяихобрабатываетивозвращаетрезультатсвоейработынаэкранпользователя.Такимобразом,посетительполучаетдинамическуюинформацию,котораяможетизменятьсяврезультатевлиянияразличныхфакторов.Самшлюз(скриптCGI)можетбытьнаписаннаразличныхязыкахпрограммирования–Cи/C++,Fortran,Perl,TCL,UNIXShell,VisualBasic,Pythonидр.

Вскоревыяснилось,чтооболочкаобладаетнебольшойпроизводительностью,ипришлосьпереписатьеезаново,ноуженаязыкеСи.Послеэтогоисходникибыливыложенынавсеобщееобозрениедляисправленияошибокидополнения.Пользователисервера,гдерасполагалсясайтспервойверсиейPHP,заинтересовалисьинструментом,появилисьжелающиеегоиспользовать.ТакчтоскороPHPпревратилсявсамостоятельныйпроект,ивначале1995годавышлаперваяизвестнаяверсияпродукта,называвшаясяPersonalHomePageTools(средствадляперсональнойдомашнейстраницы).Средстваэтибылиболеечемскромными:анализаторкода,понимающийвсеголишьнесколькоспециальныхкоманд,инаборутилит,полезныхдлясозданиягостевойкниги,счетчикапосещений,чатаит.п.

Ксередине1995годапослеосновательнойпереработкипоявиласьвтораяверсияпродукта,названнаяPHP/FI(PersonalHomePage/FormsInterpreter–персональнаядомашняястраница/интерпретаторформ).ОнавключаланаборбазовыхвозможностейсегодняшнегоPHP,возможностьавтоматическиобрабатыватьhtml-формыивстраиватьсявhtml-коды.СинтаксисPHP/FIсильнонапоминалсинтаксисPerl,нобылболеепростым.

В1997вышлавтораяверсияCи-реализацииPHPPHP/FI2.0.КтомумоментуPHPиспользовалиуженесколькотысяччеловекповсемумиру,примернос50тыс.доменов,чтосоставлялооколо1%всегочисладоменовInternet.ЧислоразработчиковPHPувеличилосьдонесколькихчеловек,но,несмотрянаэто,PHP/FI2.0всеещеоставалсякрупнымпроектомодногочеловека.ОфициальноPHP/FI2.0вышелтольковноябре1997года,просуществовавдоэтоговосновномвбета-версиях.Вскорепослевыходаегозаменилиальфа-версииPHP3.0.

PHP3.0былапервойверсией,напоминающейPHP,какиммызнаемегосегодня.ОноченьсильноотличалсяотPHP/FI2.0ипоявилсяопятьжекакинструментдлярешенияконкретнойприкладнойзадачи.Егосоздатели,ЭндиГутманс(AndiGutmans)иЗивСураски(ZeevSuraski),в1997годупереписализановокодPHP/FI,посколькуонпоказалсяимнепригоднымдляразработкиприложенияэлектроннойкоммерции,надкоторымониработали.ДлятогочтобыполучитьпомощьвреализациипроектаотразработчиковPHP/FI,ГутмансиСураскирешилиобъединитьсяснимииобъявитьPHP3официальнымпреемникомPHP/FI.ПослеобъединенияразработкаPHP/FIбылаполностьюпрекращена.

ОднойизсильныхсторонPHP3.0былавозможностьрасширенияядра.ИменносвойстворасширяемостиPHP3.0привлекловниманиемножестваразработчиков,желающихдобавитьсвоймодульрасширения.Крометого,PHP3.0предоставлялаширокиевозможностидлявзаимодействиясбазамиданных,различнымипротоколамииAPI.Немаловажнымшагомкуспехуоказаласьразработканового,намногоболеемощногоиполногосинтаксисасподдержкойООП.СмоментапоявленияPHP3.0измениласьнетолькофункциональностьивнутреннееустройствоязыка,ноиегоназвание.ВаббревиатуреPHPбольшенебылоупоминанияоперсональномиспользовании,PHPсталосокращением(рекурсивнымакронимом)отPHP:HypertextPreprocessor,чтозначит"PHP:препроцессоргипертекста".

Кконцу1998годачислопользователейPHPвозрослододесятковтысяч.Сотнитысячweb-сайтовсообщалиотом,чтоониработаютсиспользованиемэтогоязыка.Почтина10%серверовInternetбылустановленPHP3.0.

ОфициальноPHP3.0вышелвиюне1998года,после9месяцевпубличноготестирования.АужекзимеЭндиГутмансиЗивСураскиначалипереработкуядраPHP.Вихзадачивходилоувеличениепроизводительностиработысложныхприложенийиулучшениемодульностикода,лежащеговосновеPHP.

Новоеядробылоназвано"ZendEngine"(отименсоздателей:ZeevиAndi)ивпервыепредставленовсередине1999года.PHP4.0,основанныйнаэтомядреипринесшийссобойнабордополнительныхфункций,официальновышелвмае2000года,почтичерездвагодапослесвоегопредшественника,PHP3.0.Помимоулучшенияпроизводительности,PHP4.0имелещенесколькоключевыхнововведений,такихкакподдержкасессий,буферизациявывода,болеебезопасныеспособыобработкивводимойпользователеминформацииинескольконовыхязыковыхконструкций.

ВнастоящеевремяведутсяработыпоулучшениюZendEngineивнедрениюнововведенийвPHP5.0,первыебета-версиикоторогоужевышливсвет.Одноизсущественныхизмененийпроизошловобъектноймоделиязыка,ееосновательноподлаталиидобавилимногоновыхвозможностей.

СегодняPHPиспользуетсясотнямитысячразработчиков.НесколькомиллионовсайтовнаписанынаPHP,чтосоставляетболее20%доменовInternet.