PHP
Giriş
Müasir PHP istənilən çətinlikdə çox yüklənməyə dayanıqlı veb həllər hazırlamağa imkan verir. Facebook, Vkontakte, Badoo, Wikipedia kimi nəhəng internet resurslar PHP proqramlaşdırma dilindən istifadə edirlər.
PHP-nin son versiyalarında məhsuldarlıq 2 dəfədən çox artırılıb, indi bu proqramlaşdırma dili çox sürətli inkişaf mərhələsindədir.
Bundan başqa, sözügedən proqramlaşdırma dili çox böyük cəmiyyətə və bir çox dillərə tərcümə edilmiş keyfiyyətli rəsmi dokumentasiyaya malikdir. Həmçinin veb proqramçılar Composer paketlər meneceri və 373 mindən çox paketdən ibarət Packagist repozitoriyasından istifadə imkanına sahibdirlər.
HTML statik və darıxdırıcıdır
Məsələn, saytda verilənlər bazasında axtarış edə bilən və ya istifadəçilərə elektron məktublar göndərən sistem reallaşdırmaq lazımdır. HTML köməyimizə gəlmir, çünki statikdir. Statik HTML səhifəsinin kontentini dəyişdirmək üçün hər dəfə onu redaktə edib veb serverə yükləmək lazımdır.
Statik HTML səhifələr üçün kliyent və veb server arasındakı dialoq aşağıdakı kimidir:
- Brauzerin ünvan sətrinə https://www.berkshirehathaway.com/message.html yazıb Enter düyməsinə sıxırıq
- Brauzer internet üzərindən https://www.berkshirehathaway.com ünvanında yerləşən kompüterə /message.html veb səhifəsini əldə etmək üçün sorğu göndərir
- https://www.berkshirehathaway.com/ ünvanındakı kompüterdə işə salınmış veb server həmin sorğunu qəbul edir və message.html faylını sərt diskdə axtarır
- Veb server kliyentin sorğusuna cavab olaraq message.html faylının kontentini onun kompüterinə geri göndərir
- Brauzer sorğu əsasında veb serverdə tapılmış message.html səhifəsini kliyentin kompüterinin ekranında göstərir
Brauzer hər dəfə https://www.berkshirehathaway.com/message.html ünvanındakı səhifə üçün sorğu göndərdikdə veb server eyni message.html faylının kontentini kliyentin kompüterinə geri göndərir. Veb server istifadəçi tərəfindən göndərilən sorğuya cavabını yalnız o halda dəyişə bilər ki, həmin fayl redaktə edilsin və yenidən serverə yüklənsin.
PHP veb səhifələrə dinamliklik əlavə edir
İndi isə PHP-nin iştirakı ilə kliyent və server arasındakı dialoqu nəzərdən keçirək:
- Brauzerin veb ünvan sətrinə https://www.php.net/docs.php yazıb Enter düyməsinə sıxırıq
- Brauzer https://www.php.net ünvanındakı kompüterə internet üzərindən /docs.php veb səhifəsini əldə etmək üçün sorğu göndərir
- https://www.php.net ünvanındakı kompüterdə işə salınmış veb server sorğunu qəbul edir və PHP interpretatoruna müraciət edir
- PHP interpretatoru docs.php faylını sərt diskdən oxuyur
- İnterpretator docs.php faylındakı instruksiyaları (ola bilsin verilənlər bazası, məsələn, MySQL ilə məlumat mübadiləsi də edir) icra edir
- PHP interpretatoru docs.php faylındakı skriptin son nəticəsini (bu, dinamik olaraq hazırlanmış HTML səhifəsidir) veb serverə göndərir
- Veb server brauzerin sorğusuna cavab olaraq veb səhifənin kontentini kliyentin kompüterinə geri göndərir
- Brauzer veb səhifəni kompüterin ekranında göstərir
PHP proqramlaşdırma dilidir. Skript (proqram) nədir? Bu, əmrlər ardıcıllığından ibarət mətndir. Proqramçı skript yazır, PHP interpretatoru yazılmış skripti oxuyur və ordakı əmrləri icra edir. Bəzən mətnin skripti kod adlandırılır.
İlk skript
Gəlin PHP proqramlaşdırma dilində ilk skriptimizi yazaq:
<?php
error_reporting(-1);
echo 'Salam, dünya!';
?>
Nəticə:
Salam, dünya!
?>
teqi skriptin sonunda yazılmaya da bilər, skript əvvəlki kimi normal işləyəcək:
<?php
error_reporting(-1);
echo 'Salam, dünya!';
Nəticə:
Salam, dünya!
İndi isə bu skriptin necə işləməsini ətraflı öyrənək. Skript <?php
teqi ilə başlanır. İnterpretator bu teqdən sonra yazılmış əmrləri icra edir. <?php
teqindən sonra error_reporting(-1)
instruksiyası gəlir. Bu əmr skriptdə bütün mümkün xəbərdarlıqların göstərilməsini aktivləşdirir. Dərslər yeni başlayanlar üçün nəzərdə tutulduğuna görə, koda nəzarət nə qədər ciddi olsa, sizin üçün bir o qədər yaxşıdır: bütün səhvləri görə bilərsiniz. Ona görə ilk vaxtlar yazdığınız skriptlərdə <?php
teqindən dərhal sonra bu əmri yazın!
Skriptə diqqət etsək, görərik ki, hər bir instruksiyadan sonra nöqtəli vergül qoyulub. Nöqtəli vergül (;) PHP interpretatoruna bir instruksiyanın bitməsini, digərinin isə başlanmasını bildirir.
Bundan başqa, skriptdə daha bir instruksiya var:
echo 'Salam, dünya!';
echo
konstruksiyası "Salam, dünya" ifadəsini brauzerdə (həmçinin konsol ola bilər) göstərir.
Əgər <?php
teqini yazmağı unutsaq, onda kod icra edilməyəcək, ekranda olduğu kimi görsənəcək:
error_reporting(-1);
echo 'Salam, dünya!';
?>
Nəticə:
error_reporting(-1); echo 'Salam, dünya!'; ?>
Yuxarıda yazdığımız ilk skripti işə salmaq üçün bizə PHP-ni dəstəkləyən veb-server lazımdır. "İndi mən veb-server almalıyam" deyə soruşa bilərsiniz. Xeyr, indiki halda buna ehtiyac yoxdur. Mən sizə veb-serveri imitasiya edən OpenServer həllindən istifadəni tövsiyə edirəm. Bu barədə isə artıq növbəti dərsdə məlumat veriləcək.
Şərhlər
Müəyyən vaxtdan sonra koda düzəliş etmək lazım gəldikdə, yaxud layihə başqa şəxsə təhvil verildikdə skriptdə yazılmış şərhlər köməyimizə çata bilər. Şərhlər interpretator tərəfindən oxunmur və kodun icrasına heç bir təsiri yoxdur.
Koda təksətirli şərh əlavə etmək üçün iki ardıcıl sləş simvolu (//), yaxud diyez işarəsi (#) qoyub şərhimizi yazırıq:
<?php
echo 'Hello, world'; // bu kod Hello, world ifadəsini ekrana çıxarır
echo '<br>';
echo 5 * 2; # bu kod 5 və 2 ədədlərinin hasilini ekrana çıxarır
Nəticə:
Hello, world
10
Çoxsətirli şərh sləş simvolu ilə ulduz işarəsinin birgə istifadəsi (/*) ilə başlayır və ulduz işarəsi ilə sləş simvolunun birgə istifadəsi (*/) ilə bitir:
<?php
/* Aşağıdakı kod 5-in 2-yə qalıqlı bölməsini hesablayır.
Bildiyimiz kimi 5 ədədi 2-yə tam bölünmür, qalıq 1-ə
bərabərdir.
*/
echo 5 % 2;
Nəticə:
1
Dərsdəki kodları github-dan köçürə bilərsiniz.
Şərh yazmaq üçün hesabınıza daxil olun.