РНР хэл болон хэрэглээнд. Анхны програмчлалын хэл

PHP (Гипертекстийн урьдчилсан процессор) нь сервер талын вэб програмчлалын хамгийн алдартай хэрэгслүүдийн нэг юм. PHP-ийн ажил нь хамгийн энгийн хэлбэрээр үйлчлүүлэгчийн http хүсэлтийг боловсруулахад хүргэдэг. Хүсэлтийг боловсруулах нь эргээд хүсэлтийн параметрийн дагуу программчлагдсан гипертекстийг үүсгэхээс бүрддэг бөгөөд үүний дараа үүссэн тэмдэглэгээг үйлчлүүлэгч рүү буцаана. Үйлчлүүлэгч (интернет хөтөч) тогтмол статик интернет хуудас (ихэнхдээ html өргөтгөлтэй) хүсэх үед сервер энэ хуудасны агуулгыг "байгаагаар нь" өөрчлөхгүйгээр хариу болгож өгдөг. Хэрэв PHP хуудас хүссэн бол хүсэлтийг боловсруулах явцад заасан хуудасны агуулгыг эхлээд PHP орчуулагч боловсруулж, зөвхөн дараа нь энэ боловсруулалтын үр дүнг үйлчлүүлэгч рүү илгээдэг.

Өөрөөр хэлбэл, PHP бол гипертекстийн урьдчилсан процессор юм, нэрэндээ тусгагдсан. Урьдчилсанпроцессор, учир нь гипертекст клиент тал дээр эцсийн боловсруулалтанд ордог бөгөөд үүний үр дүнг бид хөтөчийн цонхонд хардаг (гипертекст процессор нь хөтөч өөрөө юм). PHP нь гипертекст үүсгэгч гэж хэлж болно, учир нь ихэнх тохиолдолд түүний ажил нь өгөгдлийн сангийн агуулга эсвэл сервер дээр байрлуулсан бусад бүтэцтэй мэдээллээс программчлан бүтээх явдал юм. Энэ товчлол нь PHP шиг харагддаг бөгөөд жишээлбэл, УЦС юм уу бусадтай адил биш, учир нь энэ нь анхнаасаа илэрхийлэгддэг байсан. Хувийн нүүр хуудасны хэрэгслүүд– хувийн интернет хуудас үүсгэх хэрэгсэл. Тиймээс PHP тайлах анхны хувилбар нь түүний зорилгыг тусгасан бөгөөд одоогийн хувилбар нь үйл ажиллагааны зарчмыг тусгасан болно.

PHP бол програмчлалын хэл юм, энэ нь бараг бүх зүйлийг дэмждэг: хувьсагч, нөхцөлт хэллэг, гогцоо, функц гэх мэт. PHP бол объект хандалтат програмчлалын хэл- энэ нь ангийн түвшинд уламжлалт өв залгамжлалыг дэмждэг. PHP нь вэб програмчлалын хэл бөгөөд энэ нь үндсэндээ динамик интернет сайтуудыг хөгжүүлэх зорилгоор бүтээгдсэн тул энэ чиглэлээр хэрэглэгддэг олон тооны бэлэн шийдлүүдийг агуулдаг, тухайлбал:

  • параметрүүдийг боловсруулах, олборлох http хүсэлтүүд GET болон POST;
  • бүрдүүлэх, илгээх http толгой;
  • хадгалах дэд бүтэц сессийн өгөгдөл;
  • хамтран ажиллах програм хангамжийн үйлчилгээ жигнэмэг;

    жигнэмэг- үйлчлүүлэгчийн компьютер дээр хөтчөөс хадгалсан текст өгөгдөл, ихэвчлэн хандалтын параметрүүд (нэвтрэх, нууц үг) эсвэл хэрэглэгчийн хувийн тохиргоог агуулдаг. Күүки нь хөтөчөөр үүсгэгддэг бөгөөд алсаас хандах бүрт HTTP хүсэлтийн толгой хэсэгт сервер рүү автоматаар илгээгддэг.


  • файлуудтай ажиллах FTP протокол;
  • ашиглан мэдээллийн сантай ажиллах;
  • дэмжлэг үзүүлэх
  • дэмжлэг үзүүлэх HTTP зөвшөөрөл;
  • имэйлээр мессеж илгээх гэх мэт.

Энэ хэсэгт би энгийн вэб програмуудыг бий болгохын тулд PHP ашиглах гол санааг товчхон авч үзэхээр төлөвлөж байна. Материалуудыг хэд хэдэн хэсэг болгон зохион байгуулах бөгөөд тус бүр нь эх кодтой нь жишээг агуулна. Бие даасан туршилт хийхийн тулд танд бүрэн нэвтрэх боломжтой, сервер дээр нь PHP суулгасан бусад сайт хэрэгтэй.

PHP програмчлалын үндэс

Тэмдэглэгээ болон гипертекстийн урьдчилсан процессорын үр дүнд РНР код нэмж байна

PHP кодыг HTML тэмдэглэгээний аль ч хэсэгт шууд нэмдэг. HTML тэмдэглэгээ нь өөрөө огт байхгүй байж болох бөгөөд хуудасны эх кодыг зөвхөн PHP програмын фрагментээр төлөөлөх боломжтой. Ямар ч тохиолдолд PHP оруулахын тулд та тусгай шошго ашиглаж, дотор нь програмын текстийг байрлуулах хэрэгтэй. Үүнийг дараах байдлаар хийнэ.

програмын код ?>

РНР хэлмэрч хэсгийн үйл ажиллагааны явцадтэдгээрт байрлах програмын кодыг ажиллуулсны үр дүнд үүссэн тэмдэглэгээгээр солигдоно. Урьдчилан процессорын үр дүнг харуулахын тулд операторыг ашиглана цуурай, аргументууд нь тогтмол, хувьсагч, функц эсвэл янз бүрийн илэрхийлэл байж болох ба үр дүн нь текст юм. Хамгийн энгийн сонголт нь дараах байдлаар харагдаж болно.

"; ?>

Хэрэв та үүссэн хуудасны эх кодыг хөтөч дээр нээвэл тэнд PHP байхгүй болно (мэдээжийн хэрэг сервер дээр PHP орчуулагч суулгаагүй бол). Эхо операторыг ийм байдлаар ашиглах нь тийм ч их утгагүй юм. PHP-ийн гоо үзэсгэлэн нь HTML үүсгэсэн хүсэлтийн параметрүүд, мэдээллийн баазын агуулга, аюулгүй байдлын бодлого болон бусад зүйлээс хамаарна. Энэ бүхний шинжилгээ, боловсруулалтыг гогцоо, нөхцөл, функц гэх мэт бараг бүх хүнд мэддэг зүйлсийг ашиглан хийдэг. Цаашид би давталт болон нөхцөлт мэдэгдлийг ашиглан PHP програмын жижиг жишээг өгөх болно, ингэснээр гипертекстийн урьдчилсан процессорын талаархи анхны ойлголт илүү бүрэн болно. Дараах програм нь 1-ээс 9 хүртэлх тооны хүчин зүйлийн утгыг хэвлэнэ.

PHP дээрх жишээ програм Энэ тэмдэглэгээг PHP орчуулагч программчлан үүсгэсэн."; $f=1; хувьд ($i=1; $i<10; $i++) { if ($i>1) $f=$f*$i; echo $i,"!=",$f,"
"; } ?>


Түүний үйл ажиллагааны үр дүн нь хөтөч дээр иймэрхүү харагдах болно.

1!=1 2!=2 3!=6 4!=24 5!=120 6!=720 7!=5040 8!=40320 9!=362880

Олон PHP файлаас програм зохион байгуулах

Богино нөхцөлт эсвэл гуравдагч оператор

Гуравдагч операторыг ашиглан нөхцөлт хуваарилалтын операторын ерөнхий дүр зургийг доор харуулав.
$үр дүн = нөхцөл? үнэн бол илэрхийлэл: худал бол илэрхийлэл;

Жишээ:
$үр дүн = ($a>5)? $a+$b: $a-$b;

Хэрэв a нь 5-аас их бол үр дүнгийн хувьсагч нь a+b утгыг, үгүй ​​бол a-b гэсэн утгыг өгнө.

Илүү elseif бүтэцтэй if хэллэгийн өөр хувилбар. Мэдэгдлийг гүйцэтгэх нь утга нь илэрхийллийн утгатай тохирч байгаа тохиолдлын хэсгээс эхэлж, завсарлах командтай тулгарах хүртэл дараагийн бүх тохиолдлуудаар үргэлжилдэг - бүрэн гүйцэтгэл. Өгөгдмөл хэсэг нь нөхцөлт мэдэгдлийн else хэсгийн өөр хэсэг юм.

Солих ( илэрхийлэл) (тохиолдол утга 1: оператор 1; хэрэг үнэ цэнэ 2: оператор 2; хэрэг үнэ цэнэ 3: оператор 3; анхдагч: анхдагчаар гүйцэтгэгдсэн оператор; ) хийх гогцоо бие; байхад ( нөхцөл);

Үүнтэй ижил жишээ:

$i=2; $f=1; хийх ( $f=$f*$i; $i++; echo $i,"!=",$f,"
"; ) байхад ($i<10);

талаар дэлгэрэнгүй мэдээлэл хийх ... while давталтунших.

Массив эсвэл foreach оператор дахь элементүүдийн дундуур давталт хийх

Массивуудын талаар тусад нь цөөн хэдэн үг хэлэх бөгөөд доор нь түүний элементүүдийг давталтаар давтахад зориулагдсан бүтэц юм.

Тус бүр ( массивдоллар шиг бүрэлдэхүүн) $element хувьсагчаар бид ямар нэг зүйл хийдэг илэрхийлэл;

$утга = массив("for", "while", "do", "foreach"); echo "PHP дэх гогцоо:","
"; foreach ($операторын утга) echo $operator,"
";

PHP дэх гогцоонууд болон сонголтын операторууд болон бусад олон програмчлалын хэл дээрх зааварчилгааг дэмждэг завсарлага– мөчлөгийг эрт дуусгах ба үргэлжлүүл– мөчлөгийн одоогийн давталтыг эрт дуусгах (мөчлөгийн эхэнд шилжих). Тэдний талаар дэлгэрэнгүй уншина уу.

Ерөнхий ойлголтууд

РНР хэл нь вэб програмчлалд тусгайлан зориулагдсан. PHP нь C болон Perl хэлний давуу талуудыг хослуулсан бөгөөд сурахад маш хялбар бөгөөд уламжлалт програмчлалын хэлээс мэдэгдэхүйц давуу талтай.

PHP-ийн синтакс нь Си хэлний синтакстай маш төстэй бөгөөд Java, Perl зэрэг хэлнээс ихэвчлэн зээлсэн байдаг.

Си програмист нь PHP хэлийг маш хурдан эзэмшиж, хамгийн их үр ашигтайгаар ашиглах боломжтой болно.
Зарчмын хувьд PHP нь стандарт GNU C (эсвэл тэдгээрийн аналогууд) дээр байдаг бараг бүх оператор, функцуудтай байдаг, жишээлбэл, гогцоонууд (while, for), сонгох хэллэгүүд (if, switch), файлын системтэй ажиллах функцууд болон процессууд (fopen, *dir, stat, unlink, popen, exec), I/O функцууд (fgets, fputs, printf) болон бусад олон...

Энэ хэсгийн зорилго нь РНР хэлний үндсэн синтаксийг товч танилцуулах явдал юм. Та холбогдох хэсгүүдээс PHP синтаксийн тодорхой бүрэлдэхүүн хэсгүүдийн талаар илүү дэлгэрэнгүй мэдээллийг авах болно.

PHP болон HTML

Аливаа програмчлалын хэлний синтакс нь зарим төрлийн диаграмм, диаграммыг ашиглахаас илүүтэйгээр жишээн дээр "мэдрэх" нь илүү хялбар байдаг. Тиймээс PHP дээрх энгийн скриптийн жишээ энд байна:



Жишээ

цуурай "Сайн уу, би PHP скрипт байна!";
?>




Энэ бол програмчлалын хэл сурч эхлэх сонгодог скрипт гэдгийг та аль хэдийн анзаарсан байх.

HTML кодыг PHP орчуулагч зөв боловсруулдаг болохыг анхаарна уу.

Скриптийн эхлэл таныг гайхшруулж магадгүй юм: энэ скрипт мөн үү? HTML хаягууд хаанаас ирдэг вэ? Тэгээд ? Энд PHP хэлний гол онцлог (дашрамд хэлэхэд маш тохиромжтой) оршдог: PHP скрипт нь ердийн HTML баримтаас огт өөр байж болохгүй.

Үргэлжлүүл. Скрипт код нь өөрөө нээлтийн шошгоны дараа эхэлдэг гэж та таамагласан байх ба хаалтаар төгсдөг ?> . Тиймээс, эдгээр хоёр шошгоны хооронд текстийг програм гэж тайлбарлаж, HTML баримт бичигт оруулдаггүй. Хэрэв програм ямар нэг зүйлийг гаргах шаардлагатай бол echo операторыг ашиглах ёстой.

Тиймээс PHP нь програмын блокоос гадуур байрлах аливаа текст хязгаарлагдмал байхаар бүтээгдсэн Тэгээд ?> , хөтөч рүү шууд гарна. Энэ нь PHP-ийн гол онцлог нь Perl болон C-ээс ялгаатай нь гаралт нь стандарт операторуудыг ашиглан хийгддэг.

Зааварыг салгах

Зааврууд нь C эсвэл Perl хэл дээрхтэй ижил аргаар тусгаарлагдсан байдаг - илэрхийлэл бүр цэг таслалаар төгсдөг.

Хаалтын таг (?>) нь мэдэгдлийн төгсгөлийг илэрхийлдэг тул дараах хоёр кодын хэсэг тэнцүү байна:

echo "Энэ бол туршилт" ;
?>

PHP скрипт дэх сэтгэгдэл

Бараг ямар ч скрипт бичих нь тайлбаргүйгээр дуусдаггүй.

PHP нь C, C++ болон Unix бүрхүүлийн тайлбаруудыг дэмждэг. Жишээлбэл:

echo "Энэ бол шалгалт" ; // Энэ бол C++ загварын нэг мөр тайлбар юм
/* Энэ бол олон мөрт тайлбар юм
дахин нэг тайлбар мөр */
цуурай "Энэ бол өөр шалгалт";
echo "Сүүлийн туршилт"; # Энэ бол Unix shell загварын тайлбар юм
?>

Нэг мөртэй тайлбарууд нь зөвхөн мөрийн төгсгөлд эсвэл PHP кодын одоогийн блок руу ордог бөгөөд тэдгээрийн аль нь өмнө ирдэг.

Энэ жишээ.


Дээд талд байгаа гарчиг нь "Энэ бол жишээ" гэж бичнэ.

Том блокуудад сэтгэгдэл бичих үед гарч ирж болзошгүй тул "C" тайлбараас зайлсхийх хэрэгтэй.

/*
echo "Энэ бол шалгалт"; /* Энэ сэтгэгдэл асуудал үүсгэнэ */
*/
?>

Нэг мөртэй тайлбарууд нь зөвхөн мөрийн төгсгөл эсвэл PHP кодын одоогийн блок руу ордог бөгөөд тэдгээрийн аль нь өмнө ирдэг. Энэ нь // ?>-ийн дараах HTML код хэвлэгдэх болно гэсэн үг: ?> PHP горимоос гарч HTML горим руу буцах боловч // үүнийг хийхийг зөвшөөрөхгүй.

PHP дахь хувьсагчид

Хувьсагчийн нэрийг дараах байдлаар тэмдэглэв $ . Үүнтэй ижил "Сайн уу, би бол PHP скрипт!"

$мессеж= "Сайн уу, би PHP скрипт байна!";
echo $ мессеж;
?>

PHP дахь өгөгдлийн төрлүүд

PHP нь найман энгийн өгөгдлийн төрлийг дэмждэг:

Дөрвөн скаляр төрөл:

Boolean (хоёртын өгөгдөл)
- бүхэл тоо (бүхэл тоо)
- хөвөх (хөвөгч цэгийн тоо эсвэл "давхар")
- мөр (мөр)

Холимог хоёр төрөл:

Массив
- объект (объект)

Мөн хоёр тусгай төрөл:

нөөц
NULL ("хоосон")

Мөн хэд хэдэн псевдотипүүд байдаг:

Холимог
- тоо (тоо)
- буцааж залгах

PHP дээрх өгөгдлийн төрлүүдийн талаар илүү ихийг мэдэж аваарай

PHP хэл дээрх илэрхийллүүд

Илэрхийллийн үндсэн хэлбэрүүд нь тогтмол ба хувьсагч юм. Жишээлбэл, хэрэв та "$a = 100" гэж бичвэл $a хувьсагчид "100" онооно.

Дээрх жишээнд $a нь хувьсагч, = хуваарилалтын оператор, 100 нь илэрхийлэл юм. Түүний үнэ цэнэ 100 байна.

Илэрхийлэл нь өөртэй нь холбоотой тодорхой утгатай бол хувьсагч байж болно:

$x = 7;
$y = $x;

Харгалзан үзсэн жишээний эхний мөрөнд илэрхийлэл нь тогтмол 7, хоёр дахь мөрөнд - хувьсагч $ x, учир нь өмнө нь 7 гэж тохируулсан байсан. $y = $x нь мөн илэрхийлэл юм.

Та PHP хэл дээрх илэрхийллийн талаар илүү ихийг олж мэдэх боломжтой

PHP операторууд

Оператор гэдэг нь нэг буюу хэд хэдэн утгуудаас бүрдэх (програмчлалын хэллэг дэх илэрхийлэл) бөгөөд үүнийг шинэ утга болгон үнэлэх боломжтой (ингэснээр бүтцийг бүхэлд нь илэрхийлэл гэж үзэж болно).

PHP хэллэгүүдийн жишээ:

Даалгаврын операторууд:

$a = ($b = 4 ) + 5 ; // үр дүн: $a-г 9 болгож, $b хувьсагчийг 4 болгож өгсөн.

?>

Хосолсон операторууд:

$a = 3 ;
$a += 5 ; // бичихтэй адил $a-г 8 болгож тохируулна: $a = $a + 5;
$b = "Сайн уу";
$b .= "Тэнд!" ; // $b = $b шиг "Сайн уу!" гэсэн мөрт $b-г тохируулна. "Тэнд!";

?>

Стринг операторууд:

$a = "Сайн уу";
$b = $a. "Дэлхий!" ; // $b нь "Сайн уу Дэлхий!"

$a = "Сайн уу";
$a .= "Дэлхий!" ; // $a нь "Сайн уу Дэлхий!"
?>

Мөн логик операторууд болон харьцуулах операторууд байдаг боловч тэдгээрийг ихэвчлэн хэлний хяналтын бүтцийн хүрээнд авч үздэг.

Та PHP операторуудын талаар дэлгэрэнгүй мэдээлэл авах боломжтой.

РНР хэлний бүтцийг хянах

PHP хэлний үндсэн бүтэц нь:

  1. Нөхцөлт мэдэгдлүүд (хэрэв, өөрөөр);
  2. Гогцоо (while, do-while, for, foreach, break, continue);
  3. Сонгох бүтэц (шилжүүлэгч);
  4. Тунхаглалын бүтцүүд (тунхаглах);
  5. Буцах бүтэц;
  6. Оруулсан бүтэц (шаардлага, оруулах).

PHP хэлний бүтцийн жишээ:

хэрэв ($a > $b) цуурай "a-ийн утга нь b-ээс их";
?>

Дээрх жишээ нь дизайны ашиглалтыг тодорхой харуулж байна хэрэвхарьцуулах оператортой хамт ($a > $b).

Дараах жишээнд хэрэв хувьсагч $aтэгтэй тэнцүү биш бол "a-ийн утга үнэн" гэсэн мөр хэвлэгдэх болно, өөрөөр хэлбэл логик оператортой нөхцөлт операторын (бүтээл) харилцан үйлчлэлийг харуулсан бол:

хэрэв ($a) цуурай "a-ийн утга үнэн";
?>

Энд while давталтын жишээ байна:

$x = 0;
байхад ($x++< 10 ) echo $ x ;
// 12345678910 хэвлэнэ
?>

Та PHP удирдлагын бүх бүтцийн талаар мэдээлэл авах боломжтой

PHP дахь захиалгат функцууд

Програмчлалын хэл болгонд дэд програмууд байдаг. Си хэлэнд тэдгээрийг функц, ассемблер хэлэнд дэд програм гэж нэрлэдэг ба Паскаль хэлэнд процедур, функц гэсэн хоёр төрлийн дэд програм байдаг.

PHP дээр ийм дэд програмууд байдаг.

Дэд програм гэдэг нь програмын аль ч газраас хандах боломжтой програмын тусгайлан зохион бүтээсэн хэсэг юм. Дэд программууд нь эх кодын унших чадварыг сайжруулж, богиносгосноор програмистуудын амьдралыг ихээхэн хөнгөвчилдөг, учир нь тус тусдаа кодын хэсгүүдийг олон удаа бичих шаардлагагүй байдаг.

PHP дахь захиалгат функцын жишээ энд байна:

функц функц () (
$a = 100;
цуурай "

$a

" ;
}
функц ();

?>

Скрипт нь 100 гаралт:

PHP дахь хэрэглэгчийн тодорхойлсон функцууд нь аргументуудыг дамжуулж, функцүүдээс буцах утгыг хүлээн авах боломжтой.

Та PHP-ийн захиалгат функцүүдийн талаар дэлгэрэнгүй мэдээлэл авах боломжтой

Баригдсан (стандарт) PHP функцууд

PHP нь янз бүрийн түвшний нарийн төвөгтэй даалгавруудыг гүйцэтгэх боломжтой асар олон тооны суурилагдсан функцуудыг агуулдаг.

OOP болон PHP

PHP нь объект хандалтат програмчлалыг (OOP) нэлээд сайн дэмждэг.

PHP дээр та янз бүрийн түвшний ангиуд, объектуудыг үүсгэж, тэдгээртэй нэлээд уян хатан ажиллах боломжтой.

PHP анги болон түүний хэрэглээний жишээ энд байна:

// Шинэ Coor анги үүсгэх:
анги Coor (
// өгөгдөл (шинж чанар):
var$name;

// аргууд:
функц Getname() (
цуурай "

Жон

" ;
}

}

// Coor ангийн объектыг үүсгэнэ үү:
$object = newCoor;
// Ангийн гишүүдэд хандах эрх авах:
$ объект -> нэр = "Алекс" ;
echo $object -> нэр ;
// "Алекс" гэж хэвлэв

Хэрэв танд өөр асуулт байвал эсвэл тодорхойгүй зүйл байвал манай сайтад тавтай морилно уу

Энэ сайтад аль хэдийн тухай болон өгсөн нийтлэлүүд байгаа. Одоо бид PHP гэж юу болох талаар ярих болно.

PHP гэж юу вэ, түүгээр юу хийж чадах вэ?

Энэхүү дагаж мөрдөхөд хялбар РНР хэлний танилцуулга нь PHP-ийн үндсийг тайлбарлаж, хэрхэн баялаг вэб хуудас, програм үүсгэхэд ашиглах. РНР бол ашиглах боломжтой програмчлалын хэл юм вэб програм бичихэд зориулагдсан. Вэб програм нь энгийн "бидэнтэй холбоо барих" маягтаас эхлээд бүрэн хэмжээний блог хөтлөх систем, онлайн дэлгүүр эсвэл форум хүртэл юу ч байж болно. Илүү .

PHP - сервер талын хэл

PHP гэж нэрлэдэг серверийн програмчлалын хэл. Энэ нь тийм гэсэн үг вэб сервер дээр ажилладаг. Ихэнх вэб програмчлалын хэл нь сервер талын хэл боловч JavaScript гэх мэт зарим хэл нь үйлчлүүлэгч талдаа байдаг бөгөөд энэ нь вэб хөтөч дээр ажилладаг гэсэн үг юм.

Файл, мэдээллийн сантай ажиллах, зурагтай ажиллах гэх мэт JavaScript-ээр хийхэд хэцүү зүйлсийг хийх боломжтой тул сервер талын хэлүүд танд илүү уян хатан байдлыг өгдөг. Энэ өдрүүдэд JavaScript маш хурдан тархсан гэж хэлэх ёстой.

Сервер тал дээр кодыг ажиллуулах нь JavaScript-ийн адил клиент талаас илүү аюулгүй арга юм. JavaScript кодыг вэб хөтөч рүү илгээдэг тул сайтын зочдод үүнийг харах, засварлахад хялбар байдаг. Сайтын нэг хуудсан дээр ч гэсэн та үүнийг хялбархан хийж чадна. Сервер талын код нь вэб сервер дээр хэвээр байгаа бөгөөд сайтын зочдод боломжгүй. PHP нь вэб сервер дээр байрладаг, тэнд PHP скриптүүдийг гүйцэтгэдэг хэрэгсэл юм.

РНР бол нээлттэй эхийн програм хангамж юм

PHP бол нээлттэй эхийн програм хангамж. Энэ нь ямар ч хэрэглэгч PHP-д хандаж, ажиллах боломжтой гэсэн үг. Энэ нь PHP урт удаан хугацаанд ажиллахад тусална. PHP үнэгүй татаж аваад ашиглах боломжтой. Энэ нь олон хостинг үйлчилгээ үзүүлэгчид PHP-ийг өргөнөөр ашигладаг шалтгаан юм. Вэб хостуудын дийлэнх нь PHP-г дэмждэг болохыг та олж мэдэх болно.

PHP нь вэб програм боловсруулахад чиглэгддэг

Олон програмчлалын хэлийг вэб програм үүсгэхэд ашиглаж болох ч PHP нь интернетэд тусгайлан зориулсан хэлнүүдийн нэг юм. PHP нь олон хэрэгтэй вэб функцтэй, тухайлбал:

  • Вэб маягт болон күүки унших, боловсруулах
  • График үүсгэх, түүнтэй ажиллах функцууд
  • зэрэг алдартай мэдээллийн баазтай холбоо тогтоох
  • -тай ажиллах функцууд.

Та PHP кодыг HTML кодтой хольж болно

PHP-ийн нэг гайхалтай онцлог нь HTML хуудсанд PHP кодын блокуудыг оруулах боломжтой юм.

Та тусгай тэмдэгтүүдийг ашиглан PHP блокуудыг салгаж болно. Вэб сервер хуудасны талаарх мэдээллийг хүлээн авах үед,
бүх РНР блокуудыг PHP хөдөлгүүр гүйцэтгэдэг бол хуудасны бусад хэсгүүдийг хөтөч рүү "байгаагаар нь" илгээдэг.

Энэ функц нь ердийн вэб хуудсыг интерактив болгоход хялбар болгодог. Ижил ажиллагаатай холбоо барих маягт, маягтуудад зориулсан гайхалтай хэрэгсэл.

PHP ашиглах

Та бараг бүх төрлийн вэб програм эсвэл скрипт бичихийн тулд PHP ашиглаж болно. Нийтлэг PHP програмууд нь:

Өгүүллийг уншсаны дараа та энэ нийтлэлийн материалд үндэслэсэн богино зааварчилгааг бөглөж мэдлэгээ нэгтгэж болно. PHP хэлийг эзэмшихэд нь амжилт хүсье!

РНР хэл нь хамгийн алдартай програмчлалын хэлнүүдийн эхний байранд ордог ч бүх зүйл төгсгөлтэй байдаг. PHP мартагдах аюултай юу, түүнийг юу орлох вэ, Facebook шиг сайт үүсгэхийн тулд та ямар хэлийг сонгох вэ? Эдгээр асуултад Quora вэб сайтын хэрэглэгчид хариулсан.

Жорж Мауэр, JS заадаг

PHP үхэж байна, Java үхэж байна, C# үхэж байна, SQL үхэж байна, JavaScript үхэж байна, C үхэж байна. Гэсэн хэдий ч жагсаалтад ороогүй бүх програмчлалын хэл дээрх төслүүдээс хамаагүй олон төсөл эдгээр хэл дээр байдаг. Тийм ээ, заримдаа шинэ чиг хандлага нь тогтсон зүйлийг орлуулж чаддаг ч энэ үйл явц маш удаан явагддаг. Энэ нь хамгийн ахмад нь муу гэсэн үг биш юм.

PHP бол Facebook үүсгэх хамгийн сайн сонголт байсан гэдэгтэй би санал нийлэхгүй байна. Энэхүү нийгмийн сүлжээг бүтээгчид PHP-ийг зөвхөн хэсэгчлэн ашигладаг. Өнөө үед энэ хэлний оронд өөрсдийн гэсэн Hack хэмээх аялгуутай болсон гэж хэлж болно. PHP бол Зукерберг болон бусад хөгжүүлэгчид энэ төсөл дээр ажиллаж эхэлсэн хэл юм.

Энэ нь PHP нь тийм ч муу сонголт байсан гэсэн үг биш юм. Гэсэн хэдий ч энэ нь програмыг хурдан хөгжүүлэх шаардлагыг хангасан хэл юм. Энэ нь эргээд стартапын гол хүчин зүйлүүдийн нэг юм - Facebook-ийн хувьд энэ хүчин зүйл шийдвэрлэх үүрэг гүйцэтгэсэн. Эхэндээ PHP нь нэг төрлийн скриптүүдийн цуглуулга байсан. Энэ нь хийсвэрлэлийн доод түвшинд шилжихэд хялбар болгож, оновчтой болгох шаардлагатай үед C кодыг бий болгодог. Энэ бүгдийг сайтар судалж, орчин үеийн ихэнх хэл дээр амжилттай хэрэгжүүлсэн.

Нийгмийн сүлжээ нь програмчлалын хэлнээс тодорхой зүйлийг шаарддаг гэсэн санааг толгойноосоо зайлуул. Ихэнх код үүсгэх нь бүрэн стандарт, танил байх болно. Тийм ээ, таамаглаж буй болон боломжит найзуудтай таарах гэх мэт асуудалтай асуудлууд байдаг ч үүнтэй төстэй асуудлуудыг ихэвчлэн тусгай програм хангамжийн тусламжтайгаар шийддэг. Жишээлбэл, графикт чиглэсэн мэдээллийн сан. Та системээ бүтээхдээ маш болгоомжтой, болгоомжтой байх хэрэгтэй бөгөөд DevOps-ийн талаар сайн ойлголттой байх хэрэгтэй, гэхдээ бусад хэл дээр ч мөн адил зүйлийг хийх шаардлагатай болно. Таны хувьд төгс хөгжлийн хэлтэй байхаас илүү туршлагатай, мэдлэгтэй хөгжүүлэгчид чухал.

Энэ нь үнэндээ намайг асуудлын голд хүргэж байна. PHP нь маш олон тооны мэргэжилтнүүд үүнийг сайн мэддэг учраас л маш сонирхолтой юм. Гэхдээ та эдгээр мэргэжилтнүүдийн аль нь ч таны гарааны бизнест ажиллахыг хүсэхгүй байх магадлалтай. Та хэд хэдэн хэлээр ярьдаг хүмүүсийг, зөв ​​төлөвшсөн, мэдээлэлтэй ертөнцийг үзэх үзэлтэй хүмүүсийг ажилд авахыг хүсэх болно. Мөн эдгээр хүмүүсийн ихэнх нь PHP-д үнэхээр дургүй байдаг.

Төсөөлөөд үз дээ: Би дөнгөж бүртгүүлсэн гарааны бизнесээ хөгжүүлэхээр түрээсэлсэн цоо шинэ оффист суугаад, төслийг хөгжүүлэхэд зориулж авсан бөөн мөнгөөр ​​ширээгээ ширтэн, ямар програмчлалын хэл сонгох талаар толгойгоо гашилгаж байна. Энэ бол миний ирээдүйн ажлын амжилт эсвэл бүтэлгүйтлийг тодорхойлох зүйлсийн жагсаалтын 250 орчимд байгаа асуудал гэдгийг би ойлгож байна. Мөн энэ шийдвэрийг хөгжүүлэх багтай хамтран гаргах хэрэгтэй гэдгийг би ойлгож эхэлж байна, надад одоогоор байхгүй байна. Тиймээс би өөрөө харьцангуй өргөн тархсан, хөгжүүлэгчдэд хийсвэрлэлийн доод түвшинд шилжих боломжийг олгодог хэлний сонголтуудыг хайж эхэлж байгаа бөгөөд хамгийн чухал нь бизнестээ хамгийн шилдэг нь танил хөгжүүлэгчидтэй байх болно.

Одоогийн байдлаар ийм хэл бол Elixir юм. Энэ нь Beam виртуал машин дээр суурилсан бөгөөд хэдэн арван жилийн туршид хэд хэдэн төслүүдэд өөрийгөө нотолсон Erlang хэлний нэлээд ойрын хамаатан юм. Нэмж дурдахад энэ хэл нь зүгээр л төсөөлшгүй гүйцэтгэлийн үр дүнг харуулдаг.

Өөр нэг гайхалтай сонголт бол Go. Энэ нь үндсэндээ доод түвшний хэл боловч дээд түвшний хэлээр хийж болох бүх зүйлийг хийж чадна. Хэдийгээр түүний бүтэцтэй холбоотой зарим шийдвэр надад таалагдахгүй байгаа ч энэ нь ямар нэг байдлаар анхаарал хандуулах ёстой.

Өөр нэг сонголт бол Clojure байх болно. Энэ хэлийг хөгжүүлэгчид олоход тийм ч хялбар биш байх магадлалтай, гэхдээ энэ хэл нь LISP-ийн шууд удам гэдгийг харгалзан үзвэл энэ нь гайхалтай хүчирхэг бөгөөд хөгжүүлэх олон сонголтыг өгдөг гэж би шударгаар хэлж чадна.

Хэд хэдэн чухал тэмдэглэл:

  • .Net framework эсвэл хаа сайгүй байдаг C# дээрх F#-г хараарай. Хэрэв та сүүлчийн сонголтыг сонгосон бол гайхалтай багийг бүрдүүлэхийн тулд дахин нягталж, нягталж үзэхийн тулд илүү олон анкет бэлтгэхэд бэлэн байгаарай;
  • Та Scala-ийн тусламжтайгаар гайхалтай зүйлийг хийж чадна;
  • Node.js. Би зүгээр л Node.js-г дурдах хэрэгтэй. Би хувьдаа Javascript нь одоогоор гинжин хэлхээний дээд хэсэгт байгаа гэж би бодож байна, гэхдээ Node нь нэлээд удаан хугацаанд өргөн хэрэглэгддэг хэлнүүдийн жагсаалтад байсаар ирсэн. Үүнээс гадна маш олон тооны өндөр мэргэшсэн мэргэжилтнүүд байдаг.

© Андрей Кухарчик
Компьютерийн сонин

Оршил

Интернэт бидний амьдралд эрт дээр үеэс бат бэх суурьшсан. Энэхүү зоримог мэдэгдлийг олон удаа баталж, үгүйсгэж болох ч нэг талаараа бүх зүйл өөрчлөгдөж, хэн ч үүнтэй маргахгүй.

Олон тооны хувийн компьютер хэрэглэгчид дискний зай хэмнэхийн тулд Internet Explorer програмыг бидний хайртай үйлдлийн системээс устгадаг байсан, учир нь тэдэнд зүгээр л хэрэггүй байсан. Интернетийн формат нь бидний компьютерийн амьдралын бусад хэсэгт аль хэдийн шилжсэн тул одоо вэбэд нэвтрэх эрхгүй хүмүүс ч гэсэн энэ програмд ​​хүрэхгүй байхыг хичээдэг. Хэрэв модем нь компьютерт суусан бол хөтчөөс зайлсхийх боломжгүй юм, учир нь та утасны шугамаас гадна юу байгааг ядаж нэг нүдээр харахыг үнэхээр хүсч байна уу? Нэгэнт танил болсон бол сүлжээний ашиг тусыг орхих нь тийм ч хялбар биш юм. Хэсэг хугацааны дараа та өөрийгөө болон санаагаа ямар нэгэн байдлаар хөрөнгө оруулалт хийж, Глобал Сүлжээний өргөн уудам талбарт өөрийгөө харуулах хэрэгтэй гэдгээ ойлгож эхэлдэг. Өөрийн гэсэн хуудас үүсгэх нь бүр нэр хүндтэй болсон бөгөөд энэ нь бага зэрэг ашиг тустай байсан ч гэсэн тоолуур нь таны байнга зочилдогийг бүртгэдэг ч таны хийсэн зүйл ноцтой төслийн эхлэл болж, амьдралыг бүхэлд нь өөрчилж чадна.

Дэлхийн интернетийн өргөн уудам нутгаар аялахдаа та мэдээжийн хэрэг, заримдаа гаднаасаа маш том хэмжээтэй байдаг бөгөөд хачирхалтай тэмдэгтүүдийг гайхшруулахад хүргэдэг гипер холбоосуудад ихэвчлэн анхаарал хандуулдаг. Мэдээжийн хэрэг, хүн бүр бөглөж, хариуд нь ямар нэгэн зүйл авах шаардлагатай маягтуудад анхаарлаа хандуулсан. Гэхдээ энэ бүхэн хэрхэн ажилладаг, юу гэсэн үг болохыг цөөхөн хүн боддог.

Би таныг програмчлалын ертөнцөд хөл тавихыг урьж байна. Энэ ертөнц олон талаараа бусадтай адилгүй ч өөрийн гэсэн бичигдээгүй хууль дүрэм, сайн муу талтай. Бидний өмнө нээгдэж буй ертөнц дахин нэг алхам л харагдах боловч энэ алхамыг эзэмшсэн байх ёстой, дараа нь цааш явахад илүү хялбар байх болно.

RNR-ийн түүх

Та үргэлж хамгийн энгийнээс эхлэх хэрэгтэй, одоо би танд PHP скрипт хэл дээр програмчлалын талаар танилцуулахыг хичээх болно. RHP (РНР гэж нэрлэдэг) 1994 оны намар төрсөн бөгөөд түүнийг бүтээгч Расмус Лердорф өөрийнх нь сайтад зочилдог хүмүүсийн тухай ойлголттой болохын тулд энэ хэлийг өөрийн зорилгоор ашигласан. үргэлжлүүлэх.

Зохиогчийн хэлснээр PNR нь ажил хэргийн уулзалтуудын хооронд нэг өдрийн дотор шууд утгаар бичигдсэн байдаг. Эхлээд энэ нь зүгээр л Perl дээр бичигдсэн энгийн CGI бүрхүүл байсан бөгөөд энэ нь зөвхөн тодорхой зорилгоор үйлчилдэг байв. Лавлагааны хувьд - CGI (Common Gateway Interface) - нийтлэг гарц интерфэйс нь HTTP серверийн програмуудыг бий болгоход зориулагдсан стандарт юм.

Gateway буюу CGI програм гэж нэрлэгддэг энэхүү программыг сервер бодит цаг хугацаанд гүйцэтгэдэг. Сервер нь хэрэглэгчийн хүсэлтийг CGI програм руу дамжуулж, тэдгээрийг боловсруулж, ажлынхаа үр дүнг хэрэглэгчийн дэлгэц рүү буцаадаг.

Тиймээс зочин янз бүрийн хүчин зүйлийн нөлөөгөөр өөрчлөгдөж болох динамик мэдээллийг хүлээн авдаг. Гарц нь өөрөө (CGI скрипт) нь C/C++, Fortran, Perl, TCL, Unix Schell, Visual Basic, Apple Script болон бусад ижил төрлийн програмчлалын хэлээр бичигдэж болно. Харин PHP-ийн хувьд Перл хэлийг анхны хувилбараар нь бичихийн тулд хамгийн энгийн бөгөөд хүртээмжтэй хэлээр сонгосон.

Цаашдын мөлжлөгийн үр дүнд бүрхүүл нь бага гүйцэтгэлтэй байсан тул зохиогч бүх зүйлийг дахин бичихээс өөр аргагүй болсон боловч C хэлээр PHP-ийн хурдыг нэмэгдүүлэх боломжтой болсон. PHP-ийн анхны хувилбартай сайт байрладаг серверийн хэрэглэгчид ижил хэрэглүүрийг хүссэн бөгөөд зохиогч өөр хэн нэгэн энэ хэлийг ашигладаг гэж төсөөлөөгүй ч PHP маш хурдан бие даасан төсөл болон хөгжиж эхэлсэн. 1995 онд бидний мэддэг анхны бүтээгдэхүүний хувилбар гарсан. Энэхүү анхны багцын нэр нь Personal Home Page Tools юм. Тухайн үед RNR нь даруухан чадвараас илүү байсан. Энэ нь хэд хэдэн тусгай командыг ойлгодог энгийн код анализатор, зочны дэвтэр, тоолуур, чат, статистикийн систем гэх мэт хэрэгцээтэй зүйлсийг бий болгоход шаардлагатай нүүр хуудсанд ашиглах төрөл бүрийн хэрэгслүүдтэй байв. 1995 оны дундуур хэлийг сайтар шинэчилж, маягт боловсруулалт гарч, мэдээллийн сантай ажиллах функцүүд нэмэгдэж, бүтээгдэхүүний хоёр дахь хувилбарыг энэ хэлбэрээр гаргасан.

Өнөөдөр PHP нь сервер дээр байрладаг хүчирхэг хөндлөн платформ хэрэгслүүдийн багц бөгөөд HTML хуудсанд суулгагдсан тусгай кодыг боловсруулахад зориулагдсан. Үүний ачаар динамик сайтуудыг хялбархан үүсгэх боломжтой болно. Ингэж үүсгэсэн файлууд серверт хадгалагдаж боловсруулагддаг бөгөөд зочин РНР-тэй баримт бичиг хүсэхэд скриптийг Java Script гэх мэт зочны хөтөч биш, харин сервер боловсруулдаг бөгөөд зөвхөн ажлын үр дүн гардаг. зочин руу шилжүүлдэг. C эсвэл Perl хэл дээр бичигдсэн CGI програм яг адилхан ажилладаг. Гэхдээ CGI-ээс ялгаатай нь PHP кодыг HTML хуудасны хаана ч суулгаж болох бөгөөд энэ нь CGI-ээс гол давуу тал юм. Үүнээс гадна PHP хэл нь өөрөө сурахад маш хялбар бөгөөд тодорхой мэдлэг шаарддаггүй. Жишээлбэл, миний хувьд арван жилийн өмнө тэр үед маш загварлаг, үнэтэй Yamaha-ууд дээр үндсэн хэл сурдаг сургуулийн компьютерийн шинжлэх ухааны хичээлд олж авсан туршлага надад хангалттай байсан. Ийм ягаан шинж чанартай хэдий ч PHP нь сул талуудтай. PHP скриптүүдийн нэлээд удаан (CGI програмуудтай харьцуулахад) ажиллагаа, мөн том, нарийн төвөгтэй програм бичихэд хүндрэлтэй байгааг тэмдэглэх нь зүйтэй. Ямар нэг байдлаар PHP нь орчуулагдсан хэл хэвээр байгаа бөгөөд энэ нь маш том, нарийн төвөгтэй програмуудын хувьд гүйцэтгэлийн бууралтад хүргэдэг, гэхдээ сайт дээр энгийн залруулга хийхэд PHP нь хамгийн сайн сонголт юм. 2000 оны дундуур РНР 2.5 сая гаруй сайтад ашиглагдаж байсанд гайхах зүйл алга!

PHP-ийн онцлог

Аливаа програмчлалын хэлний нэгэн адил PHP нь өөрийн гэсэн синтакстай байдаг. Энэ нь C эсвэл Perl-ийн синтакстай маш төстэй юм. Эдгээр хэлээр бичдэг програмистууд хэдхэн хоногийн дотор PHP хэлийг эзэмших боломжтой болно. Гэхдээ та хэзээ ч програмчилж байгаагүй ч РНР нь хэрэглэхэд хялбар бөгөөд илүү дэвшилтэт хэл рүү шилжих үндэс суурь болдог. Бүх тушаалууд нь нэлээд логик бөгөөд дүрэм нь энгийн. Синтакс нь цэг таслалаар тусгаарлагдсан мэдэгдлүүдийг агуулдаг. Шинэхэн програмистуудын гол алдаануудын нэг бол мэдэгдлийн хооронд цэг таслалгүй байх явдал юм. Аз болоход, PHP дээрх алдаанууд нь анхдагч байдлаар дэлгэцэн дээр гарч ирдэг (CGI-аас ялгаатай нь бүх алдаа нь бүртгэлийн файлд бичигддэг) бөгөөд бага зэрэг болгоомжтой, туршлагатай байж олох нь тийм ч хэцүү биш юм. Түүнчлэн ухаалаг хэлмэрч алдаа гарсан шугамын дугаарыг танд хэлэх болно.

PHP дээр програмчлахын тулд танд ямар ч текст засварлагч хэрэгтэй болно, гэхдээ хялбар болгохын тулд синтакс тодруулж, мөрийн дугаарлалт өгөх ёстой. Би сайн FTP менежер CuteFTP-ийн хамгийн сүүлийн хувилбаруудад багтсан CuteHTML-г ашигладаг. Редактор нь маш тохиромжтой, шаардлагагүй функцгүй, контекст цэсэнд суулгагдсан, суулгах шаардлагагүй, програмчлалд шаардлагатай бүх зүйлтэй. Мөн бидэнд PHP-тэй ажиллах хэрэгсэл хэрэгтэй. Ихэвчлэн Apache+PHP ашигладаг, гэхдээ энэ нь Microsoft-ын IIS гэх мэт ямар ч сервер хийх шаардлагагүй; Гэхдээ эхний сонголт нь үнэ төлбөргүй бөгөөд баримт бичиг (орос хэлийг оруулаад) болон ямар ч асуултыг олж мэдэх боломжтой форумд маш сайн дэмжлэг үзүүлдэг.

Одоо ажилдаа орцгооё - анхны скриптээ бичээрэй. Сервер ямар файлд PHP код агуулагдаж байгааг мэдэхийн тулд түүний өргөтгөлийг (файлын) phtml, php3, эсвэл php хэлбэрээр хийсэн байх ёстой. Хатуухан хэлэхэд ямар ч өргөтгөлийг оноож болно, гэхдээ нийцтэй байдлын үүднээс үргэлж phtml ашиглахыг зөвлөж байна. PHP дээрх команд бүр ихэвчлэн "-ээр эхэлдэг." (цаашид хашилтгүй). Хэд хэдэн командыг цэг таслалаар тусгаарладаг гэдгийг санаж байгаа байх. Та PHP скриптийн аль ч хэсэгт тайлбар хийж болно. Хэрэв энэ нь "/*" -ээр эхэлж, "*/" -ээр төгсдөг бол тайлбар нь жижиг бөгөөд Зөвхөн нэг мөрийг эзэлдэг бол та "//"-г тавьж, ямар ч мөрийг эцэс хүртэл хялбархан тайлбарлаж болно, ердийнх шиг, хоосон зай, таб болон шинэ мөрүүдийг үл тоомсорлож, PHP кодын унших чадварыг сайжруулахад ашиглаж болно.

PHP дахь дэлгэц ба хувьсагч

PHP нь дэлгэцэн дээрх текст гаралтыг зохион байгуулахад маш хялбар болгодог. Жишээ скриптийг харцгаая:

Энэ скриптийг HTML баримт бичгийн аль ч хэсэгт байрлуулж болох бөгөөд энэ нь зөвхөн дэлгэцэн дээр "Сайн уу, дэлхий!" гэсэн хэллэгийг харуулдаг тул энэ нь ямар ч ашиг тустай зүйл биш юм. Гэхдээ ийм байдлаар бид PHP-ийн хамгийн түгээмэл командуудын нэг болох хэрэглэгчийн дэлгэц дээр мэдээллийг харуулахтай танилцах болно. Скриптдээ хэрэгтэй функцийг өгөхийн тулд хувьсагчдыг харцгаая. Хувьсагч нь нэр, төрөл, утгаараа тодорхойлогддог. Нэр нь юу ч байж болох бөгөөд тоо, англи цагаан толгойн үсэг, зөвшөөрөгдсөн тэмдэгт (жишээлбэл, доогуур зураас эсвэл зураас) орно. Хувьсагчдыг төрлөөр нь бүхэл тоо, хөвөгч цэг, тэмдэгт гэж хуваадаг. Төрлийн дагуу үнэ цэнэ нь бараг юу ч байж болно. Жишээлбэл, хувьсагч a=5. Энэ нь хувьсагчийн нэр нь a, төрөл нь бүхэл тоо, утга нь 5 гэдгийг хэлж өгнө. Энд нэр, утгын өөр жишээнүүд байна:

Таны харж байгаагаар PHP дахь бүх хувьсагч (гэхдээ зөвхөн дотор нь биш) $ тэмдгээр эхлэх ёстой бөгөөд энэ нь орчуулагчдад тэдгээрийг PHP командуудаас нарийн ялгах боломжийг олгодог. Манай скриптийн эхний мөрөнд $name хувьсагчид 6 гэсэн утгыг өгөх ба энэ хувьсагч автоматаар бүхэл тоо болно. Дашрамд хэлэхэд Pascal эсвэл Visual Basic хэл дээрх шиг хувьсагчийн төрлийг урьдчилан тайлбарлах шаардлагагүй ч төрөлд хуваах нь цэвэр нөхцөлт боловч хувьсагч бүр автоматаар утгын дагуу зөв төрлийг ашиглахыг эрмэлздэг. Кодын хоёр дахь мөрөнд $h12-аас 4.89 хүртэлх хувьсагчийг тохируулдаг бөгөөд энэ нь хөвөгч цэгийн утга юм. Кодын гурав, дөрөв дэх мөр нь тэмдэгтийн мөр болох хувьсагчиддаа утгыг оноодог. Хашилтанд орсон аливаа зүйлийг (тоо оруулаад) тэмдэгтийн мөр гэж тайлбарлах болно. Хэрэв хувьсагчид өмнө нь тодорхойлогдоогүй боловч ашигласан бол тэдгээрийн утгыг төрлөөс хамааран тэг эсвэл хоосон мөр гэж үзнэ.

Аливаа хэл дээр та хувьсагч дээр ямар ч арифметик үйлдлүүдийг хийж болох бөгөөд энэ нь тусгай оператор байх шаардлагагүй бөгөөд үр дүнгийн хувьсагч, тэнцүү тэмдэгтийг зааж, хувьсагч эсвэл утгыг жагсаахад хангалттай. байгалийн дарааллаар шаардлагатай арифметик тэмдгүүд. Жишээ:

Скриптийн үр дүн нь 4-ийн тоог харуулах явдал юм. Бүх арифметик үйлдлүүд болон функцууд, олон түвшний хаалтууд, логик үйлдлүүд, нэг ба түүнээс дээш хэмжээгээр нэмэгдүүлэх эсвэл багасгах үйлдлүүд дэмжигддэг. Үүнээс гадна хэрэв - тэгвэл - өөрөөр харьцуулах нь маш энгийн бөгөөд байгалийн юм. Үүний тулд PHP if () ( ) else ( ) бүтцийг ашигладаг. Энэ операторын синтаксийн янз бүрийн сонголтууд байдаг боловч энэ нь үндсэн бөгөөд хамгийн логик юм. (хэрэв) хэрэв (нөхцөл) (тэгвэл) (хашилтанд бичсэн зүйлийг гүйцэтгэнэ) (өөрөөр) өөр (хашилтанд бичсэн зүйлийг гүйцэтгэнэ). Операторуудын хооронд ердийнх шиг хашилтын дараа цэг таслал тавих шаардлагагүй. Харин хашилтын дотор операторууд бие биенээсээ зөвхөн цэг таслалаар тусгаарлагдана. Хэд хэдэн баталгаажуулалтын мэдэгдлийг нэг нэгээр нь оруулах боломжтой. Энэ тохиолдолд та хаалтын ишлэлүүдийн тоог маш болгоомжтой хийх хэрэгтэй, учир нь нэг нь ч дутуу байвал орчуулагч кодын алдаа гаргах болно. Энгийн жишээг харцгаая:

Үнэнтэй харьцуулахдаа орчуулагч харьцуулалтыг даалгавараас хялбархан ялгахын тулд хоёр тэнцүү тэмдгийг ашигладаг. Скриптийн үр дүн нь 95, учир нь $a нь $b-тэй тэнцүү биш бөгөөд тушаал нь $b.$a; (хувьсагчийн хооронд цэг байдаг, арифметик үйлдлийн тэмдэг биш) заасан хувьсагчдыг дараалан харуулна. Тэгш бус байдлыг (худал) != тэмдгээр илэрхийлнэ, бусад бүх арифметик болон логик тэмдэг, операторууд хүчинтэй байна (жишээлбэл, эсвэл, ба, >,<= и т.д.).

PHP нь хувьсагчийг нэгээр дээш эсвэл доош хурдан өөрчлөх хэрэгсэлтэй. Үүнийг хийхийн тулд та хувьсагчийн нэрийг дараалан хоёр нэмэх эсвэл хасахыг тэнцүү тэмдэггүйгээр зааж өгөх хэрэгтэй. Жишээлбэл, $a++; - $a хувьсагч нэгээр нэмэгдэх болно. Нэг утгыг хэд хэдэн хувьсагчдад нэгэн зэрэг олгохыг дэмждэг - $a = $b = 4;. Хоёр хувьсагч нь дөрөвтэй тэнцүү байх болно. PHP дээрх стандарт бус арифметик үйлдлийн зарим жишээг энд үзүүлэв.

PHP дээрх файлын хавсралтууд

Интернет дээр дор хаяж нэг хуудас үүсгэсэн хүн бүр түүн дээрх тодорхой өгөгдлийг өөрчлөх асуудалтай тулгардаг. Мэдээжийн хэрэг, хэд хэдэн хуудас эсвэл ганцхан хуудас байгаа бол энэ нь тийм ч хэцүү биш юм, гэхдээ хэрэв та том сайт хийсэн бол хэдэн зуун файл бүхий жижиг нэмэлт (жишээлбэл, цэсэнд) жинхэнэ хар дарсан зүүд болж хувирах болно! PHP нь энэ асуудлыг нэг дор шийдэж, нэг хуудсыг нөгөөд нь оруулах боломжийг танд олгоно. Үүнийг REQUIRE болон INCLUDE операторуудыг ашиглан хийдэг. Эдгээр мэдэгдлийн дараа хавсаргасан файлын замыг хаалтанд оруулах ёстой. Жишээ нь, INCLUDE("text.phtml"). Эдгээр операторуудын ялгаа нь REQUIRE нь заасан файлын агуулгыг орлуулж, зөвхөн нэг удаа ашиглах боломжтой байдаг бол INCLUDE нь заасан файлын агуулгыг оруулж, гүйцэтгэдэг бөгөөд энэ нь түүнийг хэд хэдэн удаа, жишээ нь давталт хэлбэрээр ашиглах боломжийг олгодог. Ямар ч тохиолдолд файлыг ажиллуулахдаа PHP орчуулагч (зөв задлан шинжлэгч гэж нэрлэдэг) HTML төлөвт байгаа бөгөөд үүнийг оруулахын тулд кодыг бүтэц дотор хавсаргасан байх ёстой.. Файлын хавсралтууд нь зөвхөн PHP-ээр нэвтрэх боломжтой серверийн зайд л тохиолдож болно. Өөрөөр хэлбэл, та http:// файлын нэрэнд ашиглах боломжгүй.

Ихэнх тохиолдолд холбоосууд нь &, ?, % гэсэн тусгай тэмдэгтүүдийг агуулсан сайтууд байдаг. Энэ бүхэн нь RNR-ийн ажлын үр дүн байж магадгүй юм. Гол нь хэрэв та холбоосын төгсгөлд ?name=value гэж нэмбэл энэ утгыг холбоос зааж буй файлд ижил нэрээр ашиглах боломжтой болно. Хэрэв олон нэр нэмэх шаардлагатай бол &-ээр тусгаарлаж болно. Одоо бид зөвхөн нэг хуудас ашиглан нэвтрэх боломжтой вэбсайт хийх боломжтой. Мөн энэ хуудас нь холбоосоор хүлээн авсан өгөгдөл дээр үндэслэн бусад бүх мэдээллийг харуулах болно. Ийм холбоосын харагдах байдал нь иймэрхүү байх болно: http://name.ru/index.phtml?link=1. Холбоосын төгсгөлд байгаа нэгж нь бидний параметр бөгөөд index.phtml файлд орлуулах болно. Жишээлбэл, иймэрхүү:

...файлын эхлэл......файлын төгсгөл...

Бидний бичсэн код нь зочин янз бүрийн шалтгааны улмаас буруу параметр зааж өгсөн нөхцөл байдлыг харгалзан үздэг болохыг анхаарна уу. Энэ тохиолдолд алдааны мэдэгдэл бүхий бэлтгэсэн хуудас гарч ирнэ. Хэрэв параметр нь сайтын аль нэг файлтай тохирч байвал index.phtml файлын код руу оруулаад гүйцэтгэнэ. Тиймээс эхлэл ба төгсгөл нь ижил хэвээр байгаа боловч зөвхөн дунд хэсэг нь өөрчлөгддөг. Мөн аливаа өөрчлөлт өмнөх шигээ аймшигтай санагдахаа больсон. Эцсийн эцэст тэдгээрийг зөвхөн нэг файлд хийх хэрэгтэй, гэхдээ энэ нь бүх сайтад тусгагдах болно.

Өөр арга бий. Үүний мөн чанар нь PHP нь серверийн орчны хувьсагчид гэгдэх хандалтанд оршдог. Эдгээр хувьсагчийн нэг нь сайтын хаягтай харьцуулахад зочны хүссэн зам юм. Мөн энэ зам нь бидний ашиглах боломжтой болно. Энэ тохиолдолд бидний холбоосууд иймэрхүү харагдах болно: http://name.ru/index.phtml?patch/name.phtml. Хэрэв бид $QUERY_STRING параметрийг авч үзвэл холбоосын хоёр дахь хэсэг - patch/name.phtml - бидэнд боломжтой болно. Жишээ нь: $add = $QUERY_STRING. Одоо бүх зүйл автоматаар ажиллахын тулд үндсэн index.phtml файлаа өөрчилье. Хэрэв хүссэн параметрийг заагаагүй бол (зөв хэлэхэд энэ нь хоосон мөртэй тэнцүү байх болно) ямар нэг зүйлийг нээхийн тулд бид $add хувьсагчийг үндсэн хуудас болгон нээх файлын нэрийг өгнө. Үүнийг main.phtml файл болго. Дараа нь код дараах байдлаар харагдах болно.

...файлын эхлэл......файлын төгсгөл...

Таны харж байгаагаар энэ нь илүү хялбар юм. Гэхдээ энэ арга нь эхнийхээс хамаагүй хялбар боловч ийм бүтэцтэй сайт байрладаг серверийн талаар мэдээлэл авах замыг нээж өгдөг гэдгийг би нэн даруй анхааруулахыг хүсч байна. Халдагч эсвэл зүгээр л сониуч хүн тодорхой нөхцөл байдал, мэдлэгтэй бол таны серверийн талаар маш их зүйлийг олж мэдэх боломжтой бөгөөд энэ нь хакердах шууд замыг нээж өгдөг. Тиймээс болгоомжтой байгаарай, том асуудал үүсгэхгүй. Иймэрхүү асуудлаас өөрийгөө хамгаалах боломжтой, гэхдээ энэ нь огт өөр түүх юм.

PHP дээрх зочлох тоолуурын жишээ

Хэрэв та бүх зүйлийг анхааралтай уншсан бол мэдлэгийн гарааны хөрөнгийг хялбархан олж авах бөгөөд энэ нь танд ирээдүйд PHP хэлийг бие даан судлах боломжийг олгоно. Эцэст нь би танд скрипт кодтой танилцахыг санал болгож байна, энэ нь танд сайтынхаа аль ч хуудсан дээр зочлох тоолуур зохион байгуулах боломжийг олгоно. Энэ тоолуур нь олон дутагдалтай тул бүрэн ажиллахгүй, гэхдээ PHP ашиглах жишээ болгон ашиглахад тохиромжтой. Өөрийн хуудасны аль ч хэсэгт (гэхдээ шаардлагатай бол) дараах кодыг оруулна уу:

Хуудасны зочдод -

Өөрийн хуудастай нэг директор дотор counter.dat файл үүсгэж, серверт байршуулж, FTP менежерээ ашиглан энэ файлын шинж чанаруудыг бичиж болохуйцаар өөрчил. Ерөнхийдөө та бүх файлын шинж чанарыг шалгах хэрэгтэй. Хэрэв та үүнийг хийхгүй бол скрипт нь файл руу бичихийг оролдох үед байнга алдаа гаргадаг. Дашрамд хэлэхэд, үүнээс урьдчилан сэргийлэхийн тулд та файлыг бичих, нээх командын өмнө @ тэмдэг тавих хэрэгтэй бөгөөд энэ нь зочны дэлгэцэн дээр алдаа гарсан тухай мессежийг цуцлах болно. Шинж чанаруудыг өөрчлөх үед сервер дээрх хуудсаа шинэчилж, хөтөч дээрх хаягаар нь хандана уу. Та PHP кодыг оруулсан газарт "Хуудасны зочдод -" гэсэн мөр гарч ирэх бөгөөд дараа нь зочилсон тоонд харгалзах тоо гарч ирэхийг харах болно. Мөн кодын ул мөр байхгүй! Үүнийг интернетийн сервер дээр боловсруулж, гүйцэтгэлийн үр дүнг зүгээр л хөтөч рүү дамжуулсан.

Энэ скриптийн алгоритм нь маш энгийн. Эхний мөрөнд бид сонгосон хувьсагчдаа зочилсон тоог хадгалах файлын нэрийг өгнө. Хоёрдугаарт, бид уншихын тулд энэ файлын холболтыг нээдэг. Дараа нь бид холболтын амжилтыг шалгаж, хэрэв файл байгаа бөгөөд унших боломжтой бол бид тоолуурт хангалттай 10 байт мөрийг уншиж, файлын холболтыг хаадаг. Бид тоолуурын уншилтыг нэгээр нэмэгдүүлж, түүний шинэ утгыг дэлгэц дээр харуулна. Дараагийн шатанд бид шинэ тоолуурын утгыг бичих хэрэгтэй бөгөөд үүнийг хийхийн тулд бид файлтай холболтыг (тайлбарлагч) дахин нээх хэрэгтэй, гэхдээ файлын агуулгыг бичиж, цэвэрлэхийн тулд. Хэрэв энэ нь амжилттай бол бид тэнд шинэ тоолуурын утгыг бичиж, файлын тодорхойлогчийг хаадаг. Тэгээд л болоо.

Үүгээр бидний анхны РНР хэлтэй танилцсан үе өндөрлөж байна. Мэдээжийн хэрэг, маш олон хэрэгтэй, сонирхолтой зүйл үлдсэн боловч харамсалтай нь бүгдийг нэг дор багтаах боломжгүй юм. Гэсэн хэдий ч ийм учраас ухаалаг хүмүүс нэвтрэх боломжгүй зүйлийг хүртээмжтэй болгохын тулд Сүлжээг бий болгосон. Интернет дээр PHP сэдвээр маш их хэрэгтэй эх сурвалжууд байдаг бөгөөд хайлтын системийн хамгийн бага ур чадвараар та тэдгээрийг хялбархан олох боломжтой. Долоо хоногт нэг удаа шинэ нийтлэлүүд, жишээ скриптүүд тогтмол гарч ирдэг, асуулт хариултын хэсэг, түүнчлэн бусад олон хэрэгтэй мэдээллийг агуулсан PHP мэдээллийн товхимолд бүртгүүлэхийг би танд зөвлөж байна. Та захиалгын маягтыг олж, онлайн хаягаар бүртгүүлэх боломжтой.

Мэдээллийн товхимолын өмнөх бүх дугаарууд тэнд тавигдсан. Мөн хаягаар энэ бүхэн хэрхэн ажиллаж байгааг харж болно. Энэ сайт дээр таны харж буй бүх зүйлийг PHP хийсэн. Чат, форум, хувийн зар сурталчилгаа, статистикийн систем - энэ бол PHP хэл дээр програмчлалын бидэнд олгодог боломжуудын зөвхөн багахан хэсэг юм.



Хуваалцах