PHP լեզվով և կիրառություններով: Առաջին ծրագրավորման լեզու

PHP (Հիպերտեքստի նախնական պրոցեսոր) սերվերի կողմից վեբ ծրագրավորման ամենահայտնի գործիքներից մեկն է: PHP-ի աշխատանքը իր ամենապարզ ձևով հանգում է հաճախորդի http հարցումը մշակելուն: Հարցման մշակումն իր հերթին բաղկացած է ծրագրային կերպով հիպերտեքստի գեներացումից՝ ըստ հարցումի պարամետրերի, որից հետո ստացված նշումը վերադարձվում է հաճախորդին։ Երբ հաճախորդը (Ինտերնետ զննարկիչը) պահանջում է սովորական ստատիկ ինտերնետային էջ (առավել հաճախ՝ html ընդլայնմամբ), սերվերը վերադարձնում է այս էջի բովանդակությունը որպես պատասխան՝ առանց փոփոխությունների «ինչպես կա»: Եթե ​​պահանջվում է PHP էջ, ապա հարցման մշակման ընթացքում նշված էջի բովանդակությունը նախ մշակվում է PHP թարգմանչի կողմից, և միայն դրանից հետո այս մշակման արդյունքն ուղարկվում է հաճախորդին։

Այլ կերպ ասած, PHP-ն հիպերտեքստային նախապրոցեսոր է, ինչպես արտացոլված է իր անվան մեջ։ Նախընտրականպրոցեսոր, քանի որ հիպերտեքստը վերջնական մշակման է ենթարկվում հաճախորդի կողմից, որի արդյունքը մենք տեսնում ենք դիտարկիչի պատուհանում (հիպերտեքստային պրոցեսորը հենց բրաուզերն է): Կարելի է ասել, որ PHP-ն հիպերտեքստի գեներատոր է, քանի որ շատ դեպքերում նրա աշխատանքը ծրագրային ձևավորում է տվյալների բազայի բովանդակությունից կամ սերվերում տեղակայված ցանկացած այլ կառուցվածքային տեղեկատվությունից: Հապավումը նման է PHP-ին, և ոչ թե, օրինակ, ՀԷԿ-ին կամ այլ կերպ, քանի որ այն ի սկզբանե նշանակում էր. Անձնական գլխավոր էջի գործիքներ– անձնական ինտերնետային էջեր ստեղծելու գործիքներ: Այսպիսով, PHP-ի վերծանման առաջին տարբերակն արտացոլում էր դրա նպատակը, իսկ ներկայիսն արտացոլում է գործողության սկզբունքը։

PHP-ն ծրագրավորման լեզու է, որն աջակցում է գրեթե ամեն ինչ՝ փոփոխականներ, պայմանական հայտարարություններ, հանգույցներ, ֆունկցիաներ և այլն։ PHP-ն է օբյեկտ-կողմնորոշված ​​ծրագրավորման լեզու– այն աջակցում է , ինչպես նաև դասի մակարդակով ավանդական ժառանգությանը: PHP-ն վեբ ծրագրավորման լեզու է, քանի որ այն հիմնականում ստեղծվել է դինամիկ ինտերնետային կայքերի զարգացման համար և, հետևաբար, պարունակում է այս ոլորտում օգտագործվող պատրաստի մեծ թվով լուծումներ, ինչպիսիք են.

  • պարամետրերի մշակում և արդյունահանում http հարցումներ GET և POST;
  • ձևավորում և ուղարկում http վերնագրեր;
  • պահեստավորման ենթակառուցվածք նստաշրջանի տվյալները;
  • հետ աշխատելու համար նախատեսված ծրագրային ծառայություններ թխվածքաբլիթներ;

    թխվածքաբլիթներ- հաճախորդի համակարգչում զննարկչի կողմից պահպանված տեքստային տվյալներ, որոնք առավել հաճախ պարունակում են մուտքի պարամետրեր (մուտք և գաղտնաբառ) կամ օգտագործողի անձնական կարգավորումներ: Թխուկները ստեղծվում են զննարկչի կողմից և ավտոմատ կերպով ուղարկվում սերվերին HTTP հարցումների վերնագրերում յուրաքանչյուր հեռավոր մուտքի ընթացքում:


  • աշխատել ֆայլերի հետ FTP արձանագրություն;
  • աշխատել տվյալների բազաների հետ՝ օգտագործելով ;
  • աջակցություն
  • աջակցություն HTTP թույլտվություն;
  • փոստով հաղորդագրություններ և շատ ավելին:

Այս բաժնում ես նախատեսում եմ համառոտ կերպով վերանայել PHP-ի օգտագործման հիմնական կետերը՝ պարզ վեբ հավելվածներ ստեղծելու համար: Նյութերը կկազմակերպվեն մի քանի բաժինների, որոնցից յուրաքանչյուրը կպարունակի օրինակներ՝ իրենց սկզբնական կոդով: Անկախ փորձերի համար ձեզ անհրաժեշտ է ցանկացած այլ կայք, որտեղ դուք ունեք լիարժեք մուտք, և որի սերվերի վրա տեղադրված է PHP:

PHP ծրագրավորման հիմունքներ

PHP կոդի ավելացում նշագրմանը և հիպերտեքստի նախապրոցեսորի արդյունքին

PHP կոդը ուղղակիորեն ավելացվում է HTML նշագրման ցանկացած վայրում: HTML նշումն ինքնին կարող է ընդհանրապես գոյություն չունենալ, և էջի սկզբնական կոդը կարող է ներկայացվել միայն PHP ծրագրի մի հատվածով: Ամեն դեպքում, 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:

Այլընտրանք if դրույթի ավելի շատ elseif կառուցվածքներով: Հայտարարությունների կատարումը սկսվում է case բաժնից, որի արժեքը համընկնում է արտահայտության արժեքի հետ և շարունակվում է բոլոր հետագա դեպքերի ընթացքում մինչև ընդմիջման հրամանի բախվելը՝ ամբողջական կատարում: Լռելյայն բաժինը պայմանական հայտարարության մեջ այլ բաժնի այլընտրանքն է:

Անջատիչ ( արտահայտություն) (գործ արժեքը 1: օպերատոր 1; գործ արժեքը 2: օպերատոր 2; գործ արժեքը 3: օպերատոր 3; լռելյայն: լռելյայն օպերատոր; ) անել հանգույց մարմին; մինչդեռ ( վիճակ);

Նույն օրինակը.

$i=2; $f=1; անել ($f=$f*$i; $i++; echo $i,"!=",$f,"
«;) մինչդեռ ($i<10);

Ավելի մանրամասն մասին անել... while loopկարդալ .

Զանգվածի կամ foreach օպերատորի տարրերի պտտում

Առանձին-առանձին մի քանի խոսք ասվելու է զանգվածների մասին, իսկ ստորև ներկայացված է շինություն՝ իր տարրերի միջով օղակում կրկնելու համար.

Foreach ( զանգվածորպես $ տարր) արտահայտություն, որտեղ մենք ինչ-որ բան ենք անում $element փոփոխականով;

$values ​​= զանգված ("for", "while", "do", "foreach"); echo "Loops in php:","
"; foreach ($values ​​​​որպես $operator) echo $operator, "
";

Loops-ը և ընտրության օպերատորը PHP-ում, ինչպես նաև ծրագրավորման շատ այլ լեզուներում, աջակցում են հրահանգներին ընդմիջում– ցիկլի վաղ ավարտը և շարունակել- ցիկլի ընթացիկ կրկնության վաղ ավարտը (անցում դեպի ցիկլի սկիզբ): Կարդացեք ավելին նրանց մասին:

Ընդհանուր հասկացություններ

PHP լեզուն հատուկ մշակված է վեբ ծրագրավորման համար: PHP-ն համատեղում է C-ի և Perl-ի առավելությունները և շատ հեշտ է սովորել և զգալի առավելություններ ունի ավանդական ծրագրավորման լեզուների նկատմամբ:

PHP-ի շարահյուսությունը շատ նման է C լեզվի շարահյուսությանը և հիմնականում փոխառված է այնպիսի լեզուներից, ինչպիսիք են Java-ն և Perl-ը:

C ծրագրավորողը շատ արագ կտիրապետի PHP լեզվին և կկարողանա օգտագործել այն առավելագույն արդյունավետությամբ։
Սկզբունքորեն, PHP-ն ունի գրեթե բոլոր օպերատորներն ու գործառույթները, որոնք հասանելի են ստանդարտ GNU C-ում (կամ դրանց անալոգները), օրինակ՝ կան հանգույցներ (while, for), ընտրության հայտարարություններ (if, switch), ֆայլային համակարգի հետ աշխատելու գործառույթներ և գործընթացներ (fopen, *dir, stat, unlink, popen, exec), I/O ֆունկցիաներ (fgets, fputs, printf) և շատ այլ...

Այս բաժնի նպատակն է համառոտ ներկայացնել PHP լեզվի հիմնական շարահյուսությունը: 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 shell մեկնաբանությունները: Օրինակ:

echo «Սա թեստ է» ; // Սա մեկ տողով մեկնաբանություն է C++ ոճով
/* Սա բազմագիծ մեկնաբանություն է
ևս մեկ մեկնաբանության տող */
արձագանք «Սա ևս մեկ փորձություն է».;
echo «Վերջին փորձարկում» ; # Սա Unix shell ոճի մեկնաբանություն է
?>

Մեկ տողով մեկնաբանությունները գնում են միայն տողի վերջում կամ PHP կոդի ընթացիկ բլոկի վրա, որն առաջանում է դրանցից առաջ:

Սա օրինակ.


Վերնագրի վերնագիրը գրելու է «Սա օրինակ է»:

Զգույշ եղեք, որպեսզի խուսափեք տեղադրված «C» մեկնաբանություններից, քանի որ դրանք կարող են հայտնվել մեծ բլոկներ մեկնաբանելիս.

/*
արձագանք «Սա թեստ է»; /* Այս մեկնաբանությունը խնդիր կառաջացնի */
*/
?>

Մեկ տողով մեկնաբանությունները գնում են միայն տողի վերջում կամ PHP կոդի ընթացիկ բլոկի վրա, որն առաջանում է դրանցից առաջ: Սա նշանակում է, որ // ?>-ից հետո HTML կոդը կտպվի. ?> դուրս է գալիս PHP ռեժիմից և վերադառնում HTML ռեժիմ, բայց // թույլ չի տալիս, որ դա տեղի ունենա:

Փոփոխականներ PHP-ում

Փոփոխականների անունները նշվում են $ . Նույն «Բարև, ես PHP script եմ» կարելի է ստանալ այսպես.

$message= «Բարև, ես PHP սկրիպտ եմ»:;
echo $հաղորդագրություն;
?>

Տվյալների տեսակները PHP-ում

PHP-ն աջակցում է տվյալների ութ պարզ տեսակների.

Չորս սկալյար տեսակներ.

Բուլյան (երկուական տվյալներ)
- ամբողջ թիվ (ամբողջ թվեր)
- լողացող (լողացող կետով թվեր կամ «կրկնակի»)
- լար (լարեր)

Երկու խառը տեսակներ.

Զանգված
- առարկա (օբյեկտներ)

Եվ երկու հատուկ տեսակ.

ռեսուրս
NULL («դատարկ»)

Կան նաև մի քանի կեղծ տիպեր.

Խառը
- համարը (համարները)
- ետ Զանգիր

Իմացեք ավելին PHP-ում տվյալների տեսակների մասին

Արտահայտություններ PHP-ում

Արտահայտությունների հիմնական ձևերն են հաստատուններն ու փոփոխականները։ Օրինակ, եթե դուք գրում եք «$a = 100», դուք նշանակում եք «100» $a փոփոխականին.

Վերևի օրինակում $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 լեզվի կառուցվածքները

PHP լեզվի հիմնական կառուցվածքներն են.

  1. Պայմանական հայտարարություններ (եթե, այլ կերպ);
  2. Loops (while, do-while, for, foreach, break, շարունակել);
  3. Ընտրության կոնստրուկցիաներ (անջատիչ);
  4. Հռչակագրի կառուցվածքներ (հայտարարել);
  5. Վերադարձի կոնստրուկցիաներ;
  6. Ներառման կառուցվածքներ (պահանջել, ներառել):

PHP լեզվի կառուցվածքների օրինակներ.

եթե ($a > $b) արձագանք «a-ի արժեքը b-ից մեծ է».;
?>

Վերոնշյալ օրինակը հստակ ցույց է տալիս դիզայնի օգտագործումը եթեհամեմատության օպերատորի հետ միասին ($a > $b):

Հետևյալ օրինակում, եթե փոփոխականը $aհավասար չէ զրոյի, կտպվի «a-ի արժեքը ճշմարիտ է» տողը, այսինքն՝ պայմանական օպերատորի (կառուցվածքի) փոխազդեցությունը, եթե տրամաբանական օպերատորի հետ ցուցադրվում է.

եթե ($a) արձագանք «a-ի արժեքը ճշմարիտ է»;
?>

Ահա ժամանակի հանգույցի օրինակ.

$x = 0;
մինչդեռ ($x++< 10 ) echo $ x ;
// Տպվում է 12345678910
?>

Դուք կարող եք տեղեկատվություն ստանալ PHP կառավարման բոլոր կառուցվածքների մասին

Հատուկ գործառույթներ PHP-ում

Ծրագրավորման յուրաքանչյուր լեզու ունի ենթածրագրեր: C-ում դրանք կոչվում են ֆունկցիաներ, անսամբլի լեզվում՝ ենթածրագրեր, իսկ Պասկալում կան երկու տեսակի ենթածրագրեր՝ պրոցեդուրաներ և ֆունկցիաներ։

PHP-ում կան այսպիսի ենթածրագրեր.

Ենթակարգը ծրագրի հատուկ նախագծված հատվածն է, որը կարող է հասանելի լինել ծրագրի ցանկացած կետից: Ենթածրագրերը շատ ավելի դյուրին են դարձնում ծրագրավորողների կյանքը՝ բարելավելով ելակետային կոդի ընթեռնելիությունը և նաև այն ավելի կարճացնելով, քանի որ առանձին կոդի բեկորները պետք չէ մի քանի անգամ գրել:

Ահա PHP-ում հատուկ գործառույթի օրինակ.

ֆունկցիայի ֆունկցիա () (
$a = 100;
արձագանք»

$a

" ;
}
ֆունկցիա ();

?>

Սցենարը թողարկում է 100:

PHP-ում օգտագործողի կողմից սահմանված գործառույթները կարող են փոխանցվել արգումենտներ և ստանալ վերադարձի արժեքներ ֆունկցիաներից:

Դուք կարող եք մանրամասն տեղեկություններ գտնել PHP-ի մաքսային գործառույթների մասին

Ներկառուցված (ստանդարտ) PHP գործառույթներ

PHP-ն պարունակում է հսկայական քանակությամբ ներկառուցված գործառույթներ, որոնք կարող են կատարել բարդության տարբեր մակարդակների առաջադրանքներ:

OOP և PHP

PHP-ն բավականին լավ աջակցություն ունի օբյեկտի վրա հիմնված ծրագրավորման (OOP):

PHP-ում կարող եք ստեղծել տարբեր մակարդակների, օբյեկտների դասեր և բավականին ճկուն կերպով աշխատել դրանցով:

Ահա PHP դասի և դրա օգտագործման օրինակ.

// Ստեղծել նոր Coor դաս.
դասի Coor (
// տվյալներ (հատկություններ):
var$name;

// մեթոդներ:
ֆունկցիան Getname() (
արձագանք»

Ջոն

" ;
}

}

// Ստեղծել Coor դասի օբյեկտ.
$object = newCoor;
// Մուտք գործեք դասարանի անդամներին.
$ object -> name = "Alex" ;
echo $object -> name ;
// Տպում է «Ալեքս»

Եթե ​​ունեք այլ հարցեր կամ ինչ-որ բան պարզ չէ, բարի գալուստ մեր

Այս կայքում արդեն կան հոդվածներ և հոդվածներ: Այժմ մենք կխոսենք այն մասին, թե ինչ է PHP-ն:

Ի՞նչ է PHP-ն և ի՞նչ կարող եք անել դրա հետ:

PHP լեզվի այս հեշտ ներածությունը բացատրում է PHP-ի հիմունքները և ինչպես կարող եք օգտագործել հարուստ վեբ էջեր և հավելվածներ ստեղծելու համար. PHP-ն ծրագրավորման լեզու է, որը կարելի է օգտագործել վեբ հավելվածներ գրելու համար. Վեբ հավելվածը կարող է լինել ամեն ինչ՝ պարզ «կապ մեզ հետ» ձևից մինչև լիարժեք բլոգային համակարգ, առցանց խանութ կամ ֆորում: Ավելին .

PHP - սերվերի կողմի լեզու

PHP-ն հայտնի է որպես սերվերի ծրագրավորման լեզու. Դա նշանակում է որ այն աշխատում է վեբ սերվերի վրա. Վեբ ծրագրավորման լեզուների մեծ մասը սերվերի կողմի լեզուներ են, բայց որոշները, ինչպես JavaScript-ը, հաճախորդի կողմից են, այսինքն՝ դրանք աշխատում են վեբ բրաուզերում:

Սերվերի կողմի լեզուները ձեզ ավելի շատ ճկունություն են տալիս, քանի որ դուք կարող եք անել այնպիսի բաներ, որոնք դժվար է անել JavaScript-ով, օրինակ՝ աշխատել ֆայլերի, տվյալների բազաների կամ պատկերների հետ: Պետք է ասել, որ JavaScript-ը շատ արագ է տարածվել այս օրերին։

Սերվերի կողմից կոդի գործարկումն ավելի անվտանգ միջոց է, քան հաճախորդի կողմից, ինչպես անում է JavaScript-ը: Քանի որ JavaScript կոդը ուղարկվում է վեբ բրաուզերի, կայքի այցելուների համար հեշտ է դիտել և խմբագրել: Նույնիսկ կայքի մեկ էջում կարող եք հեշտությամբ. Սերվերի կողմի կոդը մնում է վեբ սերվերում և հասանելի չէ կայքի այցելուներին: PHP-ն գործիք է, որը գտնվում է վեբ սերվերի վրա և այնտեղ կատարում է PHP սկրիպտներ:

PHP-ն բաց կոդով ծրագրակազմ է

PHP-ն է բաց կոդով ծրագրակազմ. Սա նշանակում է, որ ցանկացած օգտվող կարող է մուտք գործել և աշխատել PHP-ի հետ: Սա օգնում է ապահովել, որ PHP-ն երկար ժամանակ կաշխատի: PHP-ն անվճար է ներբեռնելու և օգտագործելու համար: Սա է պատճառը, որ շատ հոսթինգ պրովայդերներ լայնորեն օգտագործում են PHP. Դուք կգտնեք, որ վեբ հոստերի ճնշող մեծամասնությունը աջակցում է PHP-ին.

PHP-ն կենտրոնացած է վեբ հավելվածների մշակման վրա

Թեև ծրագրավորման շատ լեզուներ կարող են օգտագործվել վեբ հավելվածներ ստեղծելու համար, PHP-ն այն լեզուներից է, որը հատուկ նախագծված է ինտերնետում օգտագործելու համար: PHP-ն ունի բազմաթիվ օգտակար վեբ գործառույթներ, ինչպիսիք են՝

  • Վեբ ձևերի և թխուկների ընթերցում և մշակում
  • Գրաֆիկա ստեղծելու և աշխատելու գործառույթներ
  • Կապերի հաստատում հանրաճանաչ տվյալների բազաների հետ, ինչպիսիք են
  • հետ աշխատելու գործառույթներ.

Դուք կարող եք խառնել PHP կոդը HTML կոդի հետ

PHP-ի հիանալի առանձնահատկություններից մեկն այն է, որ դուք կարող եք ներառել PHP կոդի բլոկներ HTML էջերում:

Դուք կարող եք առանձնացնել PHP բլոկները՝ օգտագործելով հատուկ նիշեր: Երբ վեբ սերվերը տեղեկատվություն է ստանում էջի մասին,
բոլոր 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-ի մոտ այն բաների ցանկում, որոնք կորոշեն իմ ապագա ձեռնարկության հաջողությունը կամ ձախողումը: Եվ ես սկսում եմ հասկանալ, որ այս որոշումը պետք է կայացվի զարգացման թիմի հետ միասին, որը ես դեռ չունեմ: Հետևաբար, ես ինքս սկսում եմ փնտրել լեզվական տարբերակներ, որոնք համեմատաբար լայն տարածում ունենային, հեշտությամբ թույլ կտան ծրագրավորողներին անցնել վերացականության ավելի ցածր մակարդակ և, որ ամենակարևորն է, ես կունենամ ծանոթ մշակողներ, ովքեր լավագույնն են իրենց բիզնեսում:

Այս պահին նման լեզուն Էլիքսիրն է։ Այն հիմնված է Beam վիրտուալ մեքենայի վրա և Erlang լեզվի բավականին մոտ ազգականն է, որն իրեն ապացուցել է մի շարք նախագծերում մի քանի տասնամյակների ընթացքում: Բացի այդ, այս լեզուն ցույց է տալիս պարզապես աներևակայելի կատարողական արդյունքներ:

Մեկ այլ հիանալի ընտրություն Go-ն է: Այն հիմնականում ցածր մակարդակի լեզու է, բայց այն կարող է անել այն ամենը, ինչ կարելի է անել բարձր մակարդակի լեզուներով: Թեև դրա կառուցվածքի վերաբերյալ որոշ որոշումներ ինձ դուր չեն գալիս, այնուամենայնիվ, այն այս կամ այն ​​կերպ ուշադրության է արժանի։

Մեկ այլ տարբերակ կլինի Clojure-ը: Հնարավորություն կա, որ այս լեզվի համար ծրագրավորողներ գտնելը հեշտ չի լինի, բայց հաշվի առնելով, որ այս լեզուն LISP-ի անմիջական ժառանգն է, կարող եմ անկեղծորեն ասել, որ այն աներևակայելի հզոր է և տալիս է զարգացման բազմաթիվ տարբերակներ:

Մի քանի կարևոր նշում.

  • նայեք F#-ին .Net Framework-ում կամ նույնիսկ ամենուր տարածված C#-ին: Եթե ​​դուք ընտրում եք վերջին տարբերակը, պատրաստ եղեք ունենալ շատ ավելի շատ ռեզյումեներ՝ վերանայելու և մաղելու համար՝ հիանալի թիմ ստեղծելու համար:
  • Դուք կարող եք որոշ տպավորիչ բաներ անել Scala-ի հետ;
  • Node.js. Պարզապես պետք է նշեմ Node.js-ը: Անձամբ ես կարծում եմ, որ Javascript-ն այս պահին շղթայի վերևում է, բայց Node-ը նույնպես երկար ժամանակ եղել է բավականին լայնորեն օգտագործվող լեզուների ցանկում: Բացի այդ, կան մեծ թվով բարձր որակավորում ունեցող մասնագետներ։

© Անդրեյ Կուխարչիկ
Համակարգչային թերթ

Ներածություն

Ինտերնետը վաղուց հաստատապես հաստատվել է մեր կյանքում: Այս համարձակ հայտարարությունը կարելի է բազմիցս ապացուցել կամ հերքել, բայց այսպես թե այնպես ամեն ինչ փոխվում է, և ոչ ոք սրա հետ չի վիճի։

Անցել են այն ժամանակները, երբ անհատական ​​համակարգչի շատ օգտատերեր, սկավառակի տարածությունը խնայելու համար, հեռացրել էին Internet Explorer ծրագիրը մեր սիրելի օպերացիոն համակարգից, քանի որ այն պարզապես նրանց պետք չէր։ Այժմ նույնիսկ նրանք, ովքեր մուտք չունեն համացանց, փորձում են չդիպչել այս ծրագրին, քանի որ ինտերնետի ձևաչափերը վաղուց տեղափոխվել են մեր համակարգչային կյանքի այլ ոլորտներ: Իսկ եթե մոդեմը տեղավորվել է համակարգչում, ապա պարզապես անհնար է խուսափել բրաուզերի առկայությունից, քանի որ իսկապես ուզում ես գոնե մեկ աչքով տեսնել, թե ինչ կա այնտեղ՝ հեռախոսագծից այն կողմ։ Եվ երբ ծանոթությունը կայացավ, այլեւս այնքան էլ հեշտ չէ հրաժարվել ցանցի առավելություններից։ Որոշ ժամանակ անց սկսում ես հասկանալ, որ պետք է ինչ-որ կերպ ներդնես քեզ և քո գաղափարները և դրսևորվես Գլոբալ ցանցի հսկայական տարածքներում: Նույնիսկ հեղինակավոր է դարձել սեփական էջ ստեղծելը, և եթե նույնիսկ դրա մեջ քիչ օգտակարություն կա, և հաշվիչը միայն գրանցում է քո հազվադեպ այցելությունները, քո արածը կարող է դառնալ լուրջ նախագծի սկիզբ և փոխել քո ամբողջ կյանքը։

Ճանապարհորդելով գլոբալ ինտերնետի հսկայական տարածքներով՝ դուք, իհարկե, հաճախ եք ուշադրություն դարձրել հիպերհղումներին, որոնք երբեմն հասնում են արտաքուստ շատ մեծ չափերի և պարզապես տարօրինակ նշանների առկայությամբ տարակուսանքի են հանգեցնում։ Եվ իհարկե, բոլորը ուշադրություն դարձրին այն ձևաթղթերին, որոնք պետք է լրացնել և դրա դիմաց ինչ-որ բան ստանալ։ Սակայն քչերն են մտածում, թե ինչպես է այդ ամենն աշխատում և ինչ է նշանակում:

Ես ձեզ հրավիրում եմ սուզվելու ծրագրավորման աշխարհ: Այս աշխարհը շատ առումներով նման չէ որևէ այլ բանի, բայց այն ունի իր չգրված օրենքներն ու կանոնները, իր դրական և բացասական կողմերը: Աշխարհը, որը բացվում է մեր առջև, տեսանելի է ևս մեկ քայլով, բայց այս քայլը պետք է տիրապետել, և այդ ժամանակ շատ ավելի հեշտ կլինի գնալ ավելի առաջ:

RNR-ի պատմություն

Միշտ պետք է սկսել ամենապարզից, իսկ հիմա ես կփորձեմ ձեզ ծանոթացնել PHP սկրիպտային լեզվով ծրագրավորմանը։ RHP (արտասանվում է PHP) ծնվել է 1994 թվականի աշնանը, և դրա ստեղծողը՝ Ռասմուս Լերդորֆը, օգտագործել է լեզուն իր նպատակների համար՝ պատկերացում կազմելու այն մարդկանց մասին, ովքեր այցելում են իր կայքը և ծանոթանում նրա հետ։ ռեզյումե.

Հեղինակի խոսքով՝ PNR-ը գրվել է բառացիորեն մեկ օրում՝ գործնական հանդիպումների միջև ընկած ժամանակահատվածում: Սկզբում դա պարզապես չնկարագրված CGI կեղև էր, որը գրված էր Perl-ով, և այն ծառայում էր բացառապես հատուկ նպատակների համար: Հղման համար՝ CGI (Common Gateway Interface) - ընդհանուր դարպասի ինտերֆեյս, ստանդարտ է, որը նախատեսված է HTTP սերվերի հավելվածներ ստեղծելու համար:

Այս հավելվածը, որը կոչվում է gateway կամ CGI ծրագիր, կատարվում է սերվերի կողմից իրական ժամանակում: Սերվերը օգտատիրոջ հարցումները փոխանցում է CGI ծրագրին, որը մշակում է դրանք և իր աշխատանքի արդյունքը վերադարձնում օգտագործողի էկրանին։

Այսպիսով, այցելուն ստանում է դինամիկ տեղեկատվություն, որը կարող է փոխվել տարբեր գործոնների ազդեցության արդյունքում։ Դարպասն ինքնին (CGI script) կարող է գրվել ծրագրավորման տարբեր լեզուներով՝ C/C++, Fortran, Perl, TCL, Unix Schell, Visual Basic, Apple Script և այլ նմանատիպ լեզուներով: Բայց PHP-ի դեպքում ընտրվել է Perl լեզուն, որպեսզի այն գրվի իր սկզբնական տարբերակով, որպես ամենապարզ և հասանելի։

Հետագա շահագործման արդյունքում պարզվեց, որ կեղևը ցածր կատարողականություն ունի, և հեղինակը ստիպված է եղել նորից գրել ամեն ինչ, բայց C լեզվով, ինչը հնարավորություն է տվել բարձրացնել PHP-ի արագությունը։ Սերվերի օգտատերերը, որտեղ գտնվում էր PHP-ի առաջին տարբերակով կայքը, խնդրեցին նույն գործիքը, և չնայած հեղինակը չէր պատկերացնում, որ որևէ մեկը կօգտագործի այս լեզուն, բավականին արագ PHP-ն վերածվեց անկախ նախագծի, և սկզբում 1995 թվականին թողարկվեց մեզ հայտնի առաջին տարբերակը: Այս առաջին փաթեթի անվանումն էր Personal Home Page Tools: Այն ժամանակ RNR-ն ավելի քան համեստ հնարավորություններ ուներ։ Այն ուներ կոդերի պարզ անալիզատոր, որը հասկանում էր մի քանի հատուկ հրամաններ, ինչպես նաև հիմնական էջում օգտագործելու տարբեր կոմունալ ծառայություններ, որոնք անհրաժեշտ են այնպիսի օգտակար բաներ ստեղծելու համար, ինչպիսիք են հյուրերի գիրքը, հաշվիչը, չաթը, վիճակագրության համակարգերը և այլն: 1995-ի կեսերին լեզուն հիմնովին վերափոխվեց, հայտնվեց ձևի մշակումը, ավելացվեցին տվյալների բազաների հետ աշխատելու գործառույթները, և արտադրանքի երկրորդ տարբերակը թողարկվեց այս տեսքով:

Այսօր PHP-ն հզոր միջպլատֆորմային գործիքների հավաքածու է, որը տեղակայված է սերվերի վրա և նախատեսված է մշակելու հատուկ կոդ, որը ներկառուցված է HTML էջում: Դրա շնորհիվ հնարավոր է դառնում հեշտությամբ ստեղծել դինամիկ կայքեր։ Այս ձևով ստեղծված ֆայլերը պահվում և մշակվում են սերվերում, և երբ այցելուն փաստաթուղթ է պահանջում PHP-ով, սկրիպտը չի մշակվում այցելուի բրաուզերի կողմից, օրինակ՝ Java Script-ի, այլ սերվերի կողմից, և միայն աշխատանքի արդյունքները։ փոխանցվում են այցելուին: C-ով կամ Perl-ով գրված CGI ծրագիրը ճիշտ նույն կերպ է աշխատում: Բայց, ի տարբերություն CGI-ի, PHP կոդը կարող է տեղադրվել HTML էջի ցանկացած վայրում, ինչը հիմնական առավելությունն է CGI-ի նկատմամբ: Եվ բացի այդ, PHP լեզուն ինքնին շատ հեշտ է սովորել և որևէ կոնկրետ գիտելիքներ չի պահանջում։ Օրինակ, անձամբ ինձ համար բավական էր այն փորձը, որ ձեռք բերեցի տասը տարի առաջ դպրոցում ինֆորմատիկայի դասերին, որտեղ այն ժամանակ շատ մոդայիկ ու թանկարժեք Yamaha-ների վրա սովորում էինք BASIC լեզուն։ Չնայած նման վարդագույն բնութագրին, PHP-ն ունի նաև թերություններ. Հարկ է նշել PHP սկրիպտների բավականին դանդաղ (համեմատած CGI ծրագրերի) աշխատանքը, ինչպես նաև մեծ և բարդ ծրագրեր գրելու դժվարությունը։ Այսպես թե այնպես, PHP-ն մնում է մեկնաբանվող լեզու, ինչը, անշուշտ, հանգեցնում է կատարողականի անկման շատ մեծ և բարդ ծրագրերի դեպքում, սակայն կայքում պարզ մանիպուլյացիաներ կատարելու համար PHP-ն լավագույն ընտրությունն է։ Զարմանալի չէ, որ 2000 թվականի կեսերին PHP-ն օգտագործվել է ավելի քան 2,5 միլիոն կայքերում:

PHP-ի առանձնահատկությունները

Ինչպես ցանկացած ծրագրավորման լեզու, PHP-ն ունի իր շարահյուսությունը: Այն շատ նման է C-ի կամ Perl-ի շարահյուսությանը։ Ծրագրավորողները, ովքեր գրում են այս լեզուներով, կկարողանան տիրապետել PHP-ին ընդամենը մի քանի օրվա ընթացքում։ Բայց նույնիսկ եթե դուք երբեք չեք ծրագրավորել, PHP-ն հեշտ է օգտագործել և հիմք է տալիս ավելի առաջադեմ լեզուներին անցնելու համար: Բոլոր հրամանները բավականին տրամաբանական են, իսկ կանոնները՝ պարզ: Շարահյուսությունը ներառում է ստորակետերով առանձնացված հայտարարություններ: Սկսնակ ծրագրավորողների հիմնական սխալներից մեկը հայտարարությունների միջև ստորակետի բացակայությունն է։ Բարեբախտաբար, PHP-ի սխալները ցուցադրվում են էկրանին լռելյայն (ի տարբերություն CGI-ի, որտեղ բոլոր սխալները գրված են log ֆայլում), և դրանք որոշակի խնամքով և փորձով գտնելը դժվար չէ: Ավելին, խելացի թարգմանիչը ձեզ կասի այն տողի համարը, որտեղ տեղի է ունեցել սխալը:

PHP-ում ծրագրավորելու համար ձեզ հարկավոր է ցանկացած տեքստային խմբագրիչ, սակայն հարմարության համար այն պետք է ապահովի շարահյուսական ընդգծում և տողերի համարակալում: Ես օգտագործում եմ CuteHTML, որը ներառված է լավ FTP մենեջերի CuteFTP-ի վերջին տարբերակների հետ: Խմբագիրը շատ հարմար է, առանց ավելորդ ավելորդ գործառույթների, այն ներկառուցված է համատեքստի մենյուում, տեղադրում չի պահանջում և ունի ծրագրավորման համար անհրաժեշտ ամեն ինչ։ Մեզ պետք է նաև 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-ի, իսկ echo $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: Հղման երկրորդ մասը՝ patch/name.phtml, հասանելի կլինի մեզ, եթե հաշվի առնենք $QUERY_STRING պարամետրը: Օրինակ, այսպես՝ $add = $QUERY_STRING: Հիմա եկեք փոխենք մեր հիմնական index.phtml ֆայլը, որպեսզի ամեն ինչ ինքնաբերաբար աշխատի: Իսկ եթե պահանջվող պարամետրը նշված չէ (ճիշտ ասած՝ հավասար կլինի դատարկ տողի), որպեսզի ինչ-որ բան բացենք, $add փոփոխականին կնշանակենք այն ֆայլի անունը, որը պետք է բացվի որպես գլխավոր էջ։ Թող սա լինի main.phtml ֆայլը: Այնուհետև ծածկագիրը կունենա հետևյալ տեսքը.

... ֆայլի սկիզբը...... ֆայլի վերջը...

Ինչպես տեսնում եք, դա նույնիսկ ավելի պարզ է: Բայց ես ուզում եմ անմիջապես զգուշացնել, որ այս մեթոդը, թեև ավելի պարզ, քան առաջինը, ճանապարհ է բացում սերվերի մասին տեղեկատվություն ստանալու համար, որտեղ գտնվում է նման կառուցվածք ունեցող կայքը։ Հարձակվողը կամ պարզապես հետաքրքրասեր մարդը, հաշվի առնելով որոշակի հանգամանքներ և գիտելիքներ, կկարողանա շատ բան իմանալ ձեր սերվերի մասին, և դա ուղղակի ճանապարհ է բացում դեպի հաքեր: Ուստի զգույշ եղեք և մեծ անախորժություններ մի պատճառեք։ Կարելի է պաշտպանվել նման խնդիրներից, բայց դա բոլորովին այլ պատմություն է։

PHP-ում այցելությունների հաշվիչի օրինակ

Եթե ​​ուշադիր կարդացել եք ամեն ինչ, ապա հեշտությամբ կստանաք գիտելիքների մեկնարկային կապիտալ, և դա ձեզ հնարավորություն կտա հետագայում ինքնուրույն ուսումնասիրել PHP լեզուն։ Եվ վերջում առաջարկում եմ ծանոթանալ սկրիպտի կոդի հետ, որը թույլ կտա կազմակերպել այցելությունների հաշվիչ ձեր կայքի ցանկացած էջում։ Այս հաշվիչն ամբողջությամբ չի գործի, քանի որ այն ունի բազմաթիվ թերություններ, բայց բավականին հարմար է որպես PHP-ի օգտագործման օրինակ։ Ձեր էջի ցանկացած վայրում (բայց միայն այնտեղ, որտեղ դա անհրաժեշտ է), տեղադրեք հետևյալ կոդը.

Էջի այցելուներ -

Ձեր էջի հետ նույն գրացուցակում ստեղծեք counter.dat ֆայլ, վերբեռնեք այն սերվերի վրա և օգտագործելով ձեր FTP մենեջերը՝ փոխեք այս ֆայլի ատրիբուտները, որպեսզի այն գրավոր լինի: Սովորաբար դուք պետք է ստուգեք ֆայլի բոլոր հատկանիշները: Եթե ​​դա չանեք, սկրիպտը անընդհատ սխալ կթողնի ֆայլում գրելիս: Ի դեպ, որպեսզի դա տեղի չունենա, դուք պետք է ֆայլ գրելու և բացելու հրամանի առջև դնեք @ նշանը, այն կչեղարկի այցելուի էկրանին սխալի մասին հաղորդագրության ցուցադրումը. Երբ ատրիբուտները փոխվեն, թարմացրեք ձեր էջը սերվերում և մուտք գործեք այն բրաուզերի իր հասցեով: Դուք կտեսնեք, որ այնտեղ, որտեղ դուք տեղադրել եք PHP կոդը, հայտնվում է «Էջի այցելուներ -» տողը, այնուհետև այցելությունների թվին համապատասխան թիվ։ Եվ ոչ մի հետք կոդը! Այն մշակվել է ինտերնետում գտնվող սերվերի վրա, և այս կատարման արդյունքը պարզապես փոխանցվել է դիտարկիչին:

Այս սցենարի ալգորիթմը շատ պարզ է. Առաջին տողում ընտրված փոփոխականին վերագրում ենք ֆայլի անվանումը, որտեղ կպահվի այցելությունների քանակը։ Երկրորդում մենք կապ ենք բացում այս ֆայլի հետ՝ կարդալու համար։ Այնուհետև մենք ստուգում ենք կապի հաջողությունը, և եթե ֆայլը կա և ընթեռնելի է, ապա դրանից կարդում ենք 10 բայթանոց տող, որն ավելի քան բավարար է հաշվիչի համար և փակում ենք կապը ֆայլի հետ։ Մենք ավելացնում ենք հաշվիչի ընթերցումը մեկով և ցուցադրում դրա նոր արժեքը էկրանին: Հաջորդ փուլում մենք պետք է գրենք նոր հաշվիչ արժեք, և դա անելու համար մենք կրկին բացում ենք կապը (նկարագրիչը) ֆայլի հետ, բայց ֆայլի բովանդակությունը գրելու և մաքրելու համար։ Եթե ​​դա հաջող է, մենք այնտեղ գրում ենք նոր հաշվիչի արժեքը և փակում ֆայլի նկարագրիչը։ Այսքանը:

Սրանով ավարտվում է մեր առաջին ծանոթությունը PHP լեզվի հետ։ Իհարկե, դեռ շատ օգտակար ու հետաքրքիր բաներ են մնացել, բայց, ցավոք, անհնար է ամեն ինչ միանգամից լուսաբանել։ Այնուամենայնիվ, դրա համար էլ խելացի մարդիկ ստեղծեցին ցանցը, որպեսզի անհասանելի դարձնեն: Համացանցում կան բազմաթիվ օգտակար ռեսուրսներ PHP թեմայով, և որոնողական համակարգի նվազագույն հմտություններով դուք կարող եք հեշտությամբ գտնել դրանք: Եվ ես ձեզ խորհուրդ եմ տալիս բաժանորդագրվել բոլորի համար PHP տեղեկագրին, որում շաբաթը մեկ պարբերաբար հայտնվում են նոր հոդվածներ, օրինակ սկրիպտներ, կա հարց ու պատասխան բաժին, ինչպես նաև շատ այլ օգտակար տեղեկություններ: Դուք կարող եք գտնել բաժանորդագրության ձևը և բաժանորդագրվել առցանց հասցեով:

Այնտեղ տեղադրված են տեղեկագրի բոլոր նախորդ համարները։ Իսկ հասցեում կարող եք տեսնել, թե ինչպես է այդ ամենն աշխատում: Այն ամենը, ինչ տեսնում եք այս կայքում, պատրաստվել է PHP-ի կողմից: Զրուցարան, ֆորում, մասնավոր գովազդ, վիճակագրության համակարգ. սա միայն մի փոքր մասն է այն հնարավորությունների, որ տալիս է մեզ PHP լեզվով ծրագրավորումը:



Կիսվել