Забони барномасозии PHP ва синтаксиси он

Ба дигарон равон намоед

Агар хоҳед, ки асосҳои забони барномасозии PHP-ро омӯзед, ба шумо ин маҷмӯи дарсҳо мадад хоҳанд кард. Мақсади ин дастур омӯзонидани асосҳои барноманависӣ дар забони PHP аст, то ки шумо тавонед:
— матнҳои коди дар PHP навишташударо азхуд карда, ба талаботҳои худ мутобиқ намоед;
— тарзи амали PHP-ро фаҳмед ва иншои барномаҳои худро оғоз намоед;


— асосҳои забони барномасозии PHP ва умуман барномасозиро хуб омӯзед, то ки дар амалия (ҷои кори оянда ё ҳозираи худ, Интернет-лоиҳаҳои худ) бобарор истифода баред.

Пас, PHP чист?

Аввал бо мафҳуми скрипт шинос мешавем. Скрипт гуфта матни кодеро, ки барои интерпретаторҳо навишта шудаанд меномем.

Маълумот оиди интерпретаро, компилятор ва фарқи интерпретатору компиляторро аз Интернет ё китобҳои барномасозӣ ёфта метавонед.

Мутахассисон метавонанд бо таърифи скрипт, ки ин ҷо оварда шудааст, розӣ набошанд. Лекин дар қадами аввал ин таъриф кофӣ аст, ба фикри ман.

Инак, PHP худ ин PHP Hypertext Preprocessor мебошад.

Чӣ хеле ки аз сайти асосии PHP (http://php.net) маълум мешавад: «PHP ин забони скриптнависии ба HTML ҳамроҳшаванда аст. Синтаксиси забони барномасозии PHP аз забонҳои C, Java ва Perl бо илова кардани хусусиятҳои маҳз ба PHP хос сохта шудааст. Мақсади ин забон офаридани шароит ба барномасозони соҳаи Web барои бунёди тези саҳифаҳои динамикӣ аст.»

PHP ин забони пуриқтидори скриптнависиет, ки онро ташрифкунандагони сайти PHP-ро истифодабаранда намебинанд. Ҳангоми ба саҳифаи бо PHP-скрипт сохташуда ташриф намудан, web-сервер коди дар скрипт бударо коркард менамояд. Кадом қисм (матн ва расмҳоро) ба ташрифкунанда намоиш дода шавад ва кадом қисмҳо (амал бо файлҳо, ҳисобҳои математикӣ ва ғайра) ноаён бояд истад муайян карда мешавад. Қисме, ки бояд намоиш дода шавад, мувофиқи талаботҳои HTML тартиб дода мешавад. Баъд, HTML-коди ҳосилшуда ба броузери web-саҳифаро талабкарда фиристода мешавад.

PHP имконият медиҳад, ки
— вақти барои сохтани сайтхои калон зарурбуда кам карда шавад;
— рафтори сайт вобаста ба маълумоти аз ташрифкунанда қабулшуда иваз шавад;
— ҳазорҳо олотҳои гуногуни алакай офаридашудаву дар Интернет мавҷуда дар сайти шумо низ истифода шаванд.
— сайтҳои аҷоиб ба мисли мағозаҳои электронӣ бо истифодаи кортҳо сохта шаванд.

Барои хуб азхуд шудани дарсҳои ин дастур доштани дониш ва малака аз HTML ва, махсусан, малакаи сохтани формаҳо дар HTML муҳим аст.

Донистани ягон забони барномасозии дигар шарти ҳатмӣ нест. Лекин агар чунин дониш дошта бошед, омӯхтани PHP хело осон хоҳад буд.

Ин дастур барои онҳое сохта шудааст, ки ба забони PHP барнома навишта наметавонанд ва мехоҳанд, ки онро омӯзанд. Бояд дар хотир доред, ки хонда баромадани ҳамаи дарсҳо дар як нишаст ва доштани малакаву дониш аз PHP аз ҳам фарқ доранд. Баробари хондани дарсҳо намунаҳои овардашударо санҷидан зарур аст. Инчунин фикр аз болои ақидаҳои баёншуда ва маълумоти додашуда ба манфиати омӯзиш аст.

Барои оғози кор дар PHP ба шумо зарур аст:
— web-хостинге, ки PHP-ро дастгирӣ мекунад ва базаи маълумоти MySQL
ё
— дар компютери худ Apache web-сервер, интерпретатори PHP ва MySQL насб шуда бошанд.

Гарчанде, ки мавҷудияти MySQL шарти қатъи нест, лекин ҷуфти MySQL+PHP аҷоиб хамдигарро пурра мекунанд.

Агар дар компютери худ Apache web-сервер, PHP ва MySQL надошта бошед, оиди насби (installation) ин нармафзор (software) аз мутахассион маслиҳат гиред, ва ба дарсҳои оянда омода бошед!

Пеш аз дар бораи синтаксиси PHP нақл кардан, худи истилоҳи «синтаксис»-ро муайян мекунем.

Синтаксис ин қоидаҳое, ки ҳангоми навиштани код бояд риоя карда шаванд.

Синтаксиси (ва семантикаи) забони PHP ба забонҳои дигар (C, Java, Perl) монанд аст. Ҳамаи матни скрипти PHP байни <?php ва ?> навишта мешавад. Боз матни скрипти PHP байни <? ва ?> навишта шуданаш мумкин аст, агар ин имконият аз тарафи web-сервер дастгирӣ шуда бошад.

Агар шумо php-скриптҳоро бо мақсади паҳн кардан навиштанӣ бошед, хуб аст, ки онҳо байни <?php ва ?> навишта шаванд. Ин эътимоди он аст, ки скрипти шумо дар серверҳои гуногун кор мекунад.

Агар ба файли HTML скрипти PHP ҳамроҳ карда шавад ё файл аз скрипти PHP иборат бошад, бояд ки қисми иловагии номи ин файл .php бошад. Масалан, агар ба файли index.html коде ба забони PHP ҳамроҳ карда шавад, номи файл index.php гузошта мешавад.

Мисоли зерин мисоли соддатарини бо ҳам истифода кардани PHP ва HTML мебошад:
namuna01.php

<html>
<head>
<title>Намунаи1   </title>
</head>
<body>
<?php
echo»Ассалому   алейкум!»;
?>
</body>
</html>

Файли матни созед, ба файл матни намунаи овардашударо нависед кунед, онро зери номи namuna01.php ба ҷои файлҳои скриптҳо таиншуда (масалан, каталоги сайт) сабт кунед. Ҳангоми кушодани саҳифаи namuna.php, масалан аз суроғаи http://localhost/test/namuna.php, дар сатри сарлавҳаи броузер «Намуна 1» ва дар қисми корӣ «Ассалому алейкум!» бояд бинед.

Барои чопи матни «Ассалому алейкум!» аз оператори echo истифода бурдем. Аҳамият диҳед, ки матни чопшаванда дар нохунакҳо навишта шуда аст.

Эҳтимолан пай бурдаед, ки дар охири сатри коди php нуқтавергул навишта шудааст. Нуқтавергул нишони охири оператори PHP аст ва гузоштани онро набояд аз хотир бароред. Масалан, агар хоҳем, ки якчанд сатр чоп карда шавад, дар охири ҳар як истифодаи оператори echo нуқтавергул навиштан зарур аст.
namuna02.php

<html>
<head>
<title>Намунаи 2</title>
</head>
<body>
<?php
echo «Ассалому алейкум! «;
echo «Ин намунаи дуюм аст. «;
echo «Такрор ва машқ сирри касби барномасозианд. «;
echo «Ба ҷои ин ҷумлаҳо ҷумлаҳои худро нависед. «;
?>
</body>
</html>

Чӣ тавре ки дар HTML қабул шудааст сатрҳои холӣ ва дигар рамзҳои фосилаҳо байни операторҳои PHP ҳангоми чоп бидуни назар карда мешаванд. Яъне, гузоштани сатрҳои холӣ байни операторҳо ва гузоштани рамзҳои TAB дар скрипт мумкин аст.
namuna03.php

<html>
<head>
<title>Намунаи 3</title>
</head>
<body>
<?php
echo «Hello World!»;        
 
 
 
               echo «Hello World!»;
 
 
?>
</body>
</html>

Дар скриптҳои минбаъда бо мақсади ихтисори миқдори сатрҳо тегҳои HTML-ро наменависем, ба ғайр аз ҳолатҳое, ки нишон додани тегҳо зарур бошад.
namuna04.php

<?php
echo «<H1>Салом!</H1>»;
?>

Ҳакимов Раҳматҷон

Манба:   oftob.com

Маводҳои ҳамсон