PHP
PHP (англ. PHP: Hypertext Preprocessor — «PHP: гипертекст препроцессору »; башында Personal Home Page Tools[3] — «Жеке веб баракчаларды түзүү аспабы ») — жалпы багыттагы программалоо скрипттик тил[4], интенсивдүүлүк менен веб-приложенияны түзүүдө колдонулуп атат. Азыркы убакытта басымдуу көпчүлүк хостинг-провайдерлери көтөрөт жана динамикалык сайтты түзүүчү программалоо тилдеринин арасынан лидердик орундардын биринде турат. [5]
Семантика: | |
---|---|
Аткарылуу тиби: | |
Пайда болду: | |
Автор(лору): | |
Релиз: |
5.4.10 (Бештин айы 20 2012) |
Маалыматтарды типизирлөө: | |
Таасир берип көрдү: | |
Сайт: |
Тил жана анын интерпретатору ачык код проектисинде энтузиасттар группасы менен түзүлүп атат.[6] Проект өзүнүн жеке лицензиясы менен таралат, жана ал GNU GPL менен дал келишпейт. Долбоор өзүнүн жеке лицензиясы менен таралат, жана GNU GPL менен дал келишпейт.
Колдонуу чөйрөсү
түзөтүүИнтернет тармагы үчүн программалоо областында PHP - эң популярдуу скрипттик тилдердин бири (JSP, Perl жана ASP.NET тилдери менен бр катарда), өзүнүн жөнөкөйлүгү, аткаруу ылдамдыгы, бай мүмкнүчүлүктөрү, кроссплатформалыгы жана PHP лицензиясы менен баштыпкы кодун жайылтууда.
Веб-сайттарды куруу обласытндагы поулярдуулук веб приложенияларды түзүү үчүн алдын ала отургузулган көп түрдөгү ыкмалар менен белгиленет.[7]. Алардын негизгилери:
- автоматикалык бөлүп алуучу POST жана GET-параметрлери, жана веб-сервердин айланасындагы өзгөрүлмөлөр алдын ала алынган массивдер менен;
- көп түрдүү база маалыматын башкаруучу системдер менен байланышуусу (MySQL, MySQLi, SQLite, PostgreSQL, Oracle (OCI8), Oracle, Microsoft SQL Server, Sybase, ODBC, mSQL, IBM DB2, Cloudscape жана Apache Derby, Informix, Ovrimos SQL, Lotus Notes, DB++, DBM, dBase, DBX, FrontBase, FilePro, Ingres II, SESAM, Firebird / InterBase, Paradox File Access, MaxDB, Интерфейс PDO);
- автоматизирленген жөнөтүүчө HTTP-аталыштар;
- HTTP-авторизация менен иштөө;
- cookies жана сессиялар менен иштөө;
- локалдык жана четтетилген файлдар сокеттер менен иштөөдө ;
- серверге жүктөлгөн файлдарды иштеп чыгууу;
- XForms менен иштөө.
Азыркы учурда PHP жүз миңдеген түзүүчүлөр колдонот. TIOBE корпорациясынын, издөө системдерине байгытталган рейтингине ылайык, декабрдын 2012 PHP программалоо тилдердин 6 орунунда турган. [5] PHP колдонгон ири сайттардын арасына Facebook, Wikipedia жана башкалар кирет.
LAMPка кирет - кеңири таралган веб-сайттардын хостингдерине (Linux, Apache, MySQL, PHP) жасалган программдык жабдуу.
GUI-приложенияларды түзүү
түзөтүүPHP мындай тармакта кеңири таралбаса дагы, бирок аны GUI-приложенияларды түзүүдө да колдонсо болот.
Кроссплатформалык приложенияларды түзүү үчүн PHP-GTK жана PHP-Qt пакеттери кызмат кылат, алар популярдуу виджеттер китепканасын түзүшөт.
Windows үчүн графикалык приложенияларды түзүү үчүн атайын бекер WinBinder пакети бар (Си тилинде жазылган, фактикалык түрдө — WinAPI үчүн каптама) жана алакалашкан чөйрө Devel Studio.
Жана дагы .NET/Mono — Phalanger үчүн PHP реализациясы бар, PHP кодунун жыйынтыгы болуп Phalanger-де ар кандай .NET-приложение болушу мүмкүн, олуттуу же колдонмо болсо дагы.
Синтаксиси
түзөтүүКалып:Уикикитеп PHP тилинин синтаксиси Си программалоо тилине окшош. Кээ бир элементтер, ассоциативдик массивдер жана foreach цикли Perl тилинен алынган.
Пограммдын иштешине атайы бир алмашмаларды, колдонулчу модулдарды түшүндүрүп кереги жок ж.б.у.с. Ар бир программ PHP опрератору менен баштала берсе болот.
PHP деги жөнөкөй программ мындай болуп жазылат:
<?php
echo 'Hello, world!';
?>
Саптын кыска вариантта да жазса болот:
<?= 'Hello, world!' ?>
<?=
түзүлүшүндөгү ачылуучу тег саптын чыгуу түрүн кыскартуу конструкциясы катары колдонулат.
PHP <?php ?>
деген чектөөлөрдүн ичинде турган кодду аткарат. Чектөөнүн сырткары турган калган баары, эч өзгөрүлүүсүз чыгат. Негизи мындайлар HTML-документке PHP-кодду кошууда колдонулат. Маселен:
<html>
<head>
<title>PHP - ни тестирлөө</title>
</head>
<body>
<?php echo 'Hello, world!'; ?>
</body>
</html>
<code><?php ?></code> чектөөөлөрдөн сырткары, кошумча варианттарды колдонгонго уруксат бар, мисалы <code><? ?></code> жана <code><script language="php"> </script></code>. Мындан сырткары 6.0 версияг чейин ASP программалоо тилиннин <code><% %></code> (конструкциялар <code><? ?></code> жана <code><% %></code> php.ini конфигурациялык файлдан кошсо болот). чектөөлөрүн колдонгонго уруксат берилет.
Өзгөрүлмөлөрдүн аталыштары <tt>$</tt> символунан башталат, өзгөрүлмөнүн тибин жарыялап кереги жое. Өзгөрүлмөлөрдүн, функициялардын жана класстардын аталыштары регистрге сезимталдуу. Константалар да регистрге сезимталдуу. Өзгөрүлмөлөр апострофтордо жана экилик тырмакчаларда жана heredoc (<<< операторунун жардамы менен жасалган саптарда)-саптарда иштешет.
PHP жаңы сапка кенемте аркылуу HTML жана башка бош форматтагы тилдер сыяктуу кылып өтүүнү кароодо. Инструкциялар үтүрү бар чекит (;) аркылуу бөлүнөт, if/else жана цикл констукрцарияларынан башкасы.
Функцияда өзгөрүлмөлөрдү маанисине жана шилтемеге(& - белгиси колдонулат) жараша бере берсе болот.
PHP үч типтеги пикирлерди колдойт: Си тилинин стилинде (чектөөлөр /* */), C++ (// башталып саптын аягына чейин барат) жана UNIX оболочкасы ( # баштап саптын аягына чейин).
Тарыхы
түзөтүү1944 жылы Дат программисти Расмус Лердорф, Perl/CGI тилинде анын онлайн-резюмесининин колдонуучуларынын эсебин жана чыгаруусун, HTML-документтеринин калыптарын иштетүүнү талап кылуучу скриптик тилдеринин чогулмасын жасайт. Лердорф чогулманы Personal Home Page (Жеке үй баракчасы) деп атаган. Кийинчерээк Perl-дин функционалдуулугу жана ылдамдыгы - скрипт инттерпретаторунун - жетишпегендиктен Лердорф Си тилин колдонуп жаңы калыптардын PHP/FI (англ. Personal Home Page / Forms Interpreter — «Жеке үй баракчасы / Формалар Интерпретатору»). интерпретаторун түзгөн.
1997 жылы көп убакыттык бета-тестирлөөдөн киийн иштеткичтин Cи тилинде жазылган — PHP/FI 2.0 экинчи версиясы чыкты. Аны болжол меенен жалпы дүйнөдөгү домендеринин 1%( болжолдуу 50 миң) колдонгон.
PHP 3.0 версиясы кыйла оңдоолорго алынып, азыркы заманбап кейиби жана программалоо тилинин стили аныкталган. 1997 жылы эки израилдик программистер, Энди Гутманс жана Зеев Сураски, интерпретатордун кодун кайра толук жазып чыгышкан. PHP 3.0 расмий түрдө 1998 жылдын июнь айында чыккан.
PHP 3.0 эң күчтүү жагы болуп, өзөгүнүн кошумча модулдар аркылуу кеңейлиши мүмкүнчүлүгү бар эле. Кийинчерээк PHP-ге кеңейтүүнү жазган интерфейс,көптөгөн башка четтик түзүүчүлөрдү тарткан, ал болсо PHP -ге аябагандай көптөгөн база маалыматтары, протколдор, көптөгөн сандагы API колдоого мүмкүнчүлүк түзүлгөн. Көптөгөн сандагы түзүүчүлөрдүн иштөөсү тилдин тез өнүгүүсүнө жана жана ылдамдуу популяардуулугуна шар түзүлгөн. Ушул версиясынан баштап php акроними мындай чечмеленип калган:«PHP: hypertext Preprocessor», мурдакы эскиси «Personal Home Page».
1998 жылдын кышында, PHP 3.0 расмий чыгышынан кийин дароо Энди Гутманс жана Зеев Сураски PHP-нин өзөгүн кайра оңдоп түзөөнү башташат. Маселеге оор тиркемелердин ылдамдыгы жана PHP кодунун модулдуу базисин мыктылоо кирген. Zend Engine деп аталган жаңы кыймылдаткыч койулган маселелерди ийгиликтүү аткара алган жана 1999 жылдын ортосунда жарыяланган. Ушул кыймылдаткычта негизделген PHP 4.0 версиясы бир нече жаңы ачкычтуу жаңыланууларды камтыган, мисалы: сессияларды колдоо, чыгуулардын буферизациясы, колдонуучу аркылуу кирген маалыматтарды коопсуздуу иштетүү жана жаңы бир нече тил конструкцияларын.
PHP -нин бешинчи версисясы түзүүчүлөр аркылуу 2004 жылдын 13 июлунда жарыяланган. Алмаштыруулар буларды камтыган, Zend (Zend Engine 2) өзөгүн жаңылоо, бул болсо интерпретатордун эффективдүүүлүгүн көтөргөн. XML разметка тилин колдоону киргизүү. ОБП функцяиларын толук кайра иштеп чыгуу, бул болсо Java-да колдонулган моделге кыйла окшош калган. Көбүн эсе, деструктор, ачык, жабык, коргонулган мүчө жана ыкмалар кирген, акыр аягында мүчө жана ыкмалар, интерфейстер жана объектерди клондоо. Кийинки кирген версияларында аталыштардын мейкиндиктери, кулптоо жана бир катар олуттуу өзгөрүлөр, сандуу жана сапаттуулар PHP 5.0 -гө өтүп атканда 2004 жылы 13 июлунда пайда болушкан.
PHP - нин алтынчы версиясы 2006 жылдын октябрынан баштап түзүлө баштаган. Көптөгөн жаңылоор киргизилген, мисалы, регулярдуу туяютмалардын өзөгүнөн POSIX жана «узун» суперглобалдуу массивдердин четтетилиши, php.ini конйигурациялык айлдан safe_mode, magic_quotes_gpc жана register_globals директивалары өчүрүлгөн. Эң башкы жана негизги жаңылоосу болуп Юникодду колдоосу болгон. Бирок 2010 жылдын мартында PHP6 түзүүсү, Юникодду колдоодо оорчулуктар чыгып келечексиз болуп таанылган. PHP6 баштапкы коду бутакка жылдырылган, а негизги түзүү линия болуп 5.4 версиясы калган.
CMS/CMF
түзөтүүЖаңылар жана попуялардуулар:
- Kohana
- Codeigniter
- Yii
- Zend Framework
- Symfony
- CakePHP
- FuelPHP
- Drupal
- Joomla
- WordPress
Тиркемелер
түзөтүү- ↑ PHP Compiler Internals (англ.). Текшерилген күнү 17 -ноябрь (жетинин айы) 2009. Түп булактан архивделген күнү 21 -август (баш оона) 2011.
- ↑ PHP: Zend API: Hacking the Core of PHP — Manual. Текшерилген күнү 8 -январь (үчтүн айы) 2013. Түп булактан архивделген күнү 3 -январь (үчтүн айы) 2013.
- ↑ PHP: History of PHP — Manual
- ↑ PHP: Preface — Manual (англ.). Түп булактан архивделген күнү 21 -август (баш оона) 2011.
- ↑ 5.0 5.1 TIOBE Software: Tiobe Index
- ↑ History of PHP and related projects (англ.). Түп булактан архивделген күнү 21 -август (баш оона) 2011.
- ↑ PHP: Отличительные особенности — Manual (орусча) (21 июня 2009). Текшерилген күнү 13 -ноябрь (жетинин айы) 2009. Түп булактан архивделген күнү 21 -август (баш оона) 2011.
Дагы караңыздар
түзөтүүШилтемелер
түзөтүү- PHP расмий сайты (англ.)
- PHP боюнча колдонмо (орусча) (включая FAQ)
- PHP Archived 2013-05-13 at the Wayback Machine на Ohloh
- Php 5.5 альфа версиясы чыкты Archived 2013-06-07 at the Wayback Machine
- snippets.su Archived 2013-05-13 at the Wayback Machine (орусча) — php код мисалдары