HTML, Excel, Word, SEOPHP êóðñ äëÿ ÷àéíèêîâ ⇒ Âûðàæåíèÿ

PHP äëÿ "÷àéíèêîâ"

Èíñòðóìåíòû
Âûáèðàåì IDE
Âûáèðàåì Web-ñåðâåð
Âûáèðàåì ÑÓÁÄ
Ñòðóêòóðà ÿçûêà PHP
Ïåðâûé øàã
Ñèíòàêñèñ
Òèïû äàííûõ
Ïåðåìåííûå è êîíñòàíòû
Îïåðàòîðû
Âûðàæåíèÿ
Óïðàâëÿþùèå ñòðóêòóðû
Ôóíêöèè
Êëàññû
Èñêëþ÷åíèÿ
Îøèáêè
Ìàññèâû
Ãëîáàëüíûå ìàññèâû
Cookies
Ñåññèè
Çàãðóçêà ôàéëîâ
Ðàáîòà ñ ôàéëàìè
Ðàáîòà ñ ôàéëàìè íà äèñêå
Ðàáîòà ñ äàííûìè â ôàéëå
Ïðèìåð óïðàâëåíèÿ ôàéëàìè
Ðàáîòà ñ áàçàìè äàííûõ
Ïîäêëþ÷åíèå
Àíàëèç ðåçóëüòàòîâ
Âûïîëíåíèå çàïðîñîâ
Îòêëþ÷åíèå
Ïðèìåð: îòñëåæèâàíèå ïîëüçîâàòåëåé
Ðàáîòà â ñåòè
Îòïðàâêà ïî÷òû
Áåçîïàñíîñòü
HTTP-àóòåíòèôèêàöèÿ
Çàùèòà ëîãèíîì è ïàðîëåì
Àâòîìàòèçàöèÿ
Ðåãóëÿðíûå âûðàæåíèÿ â PHP
Èíòåãðàöèÿ
PHP è JavaScript



PHP: Âûðàæåíèÿ


Àâòîð: Àðòåìüåâ Ñåðãåé Èãîðåâè÷
ICQ: 438856621
email: _spin_@bk.ru

Âûðàæåíèÿ â PHP - îäèí èç îñíîâîïîëàãàþùèõ ýëåìåíòîâ. Âñ¸, ÷òî âû ïèøåòå - ýòî âûðàæåíèÿ. Èíûìè ñëîâàìè, âûðàæåíèå - ýòî âñ¸, ÷òî èìååò çíà÷åíèå. Äëÿ ïðàêòè÷åñêîé ðàáîòû î÷åíü âàæíî ïîíèìàòü êàê ïðèíöèïû ïîñòðîåíèÿ âûðàæåíèé òàê è òî, êàê èõ àíàëèçèðóåò è èñïîëíÿåò PHP.


Ñàìîå ïðîñòîå âûðàæåíèå â PHP - ïðèñâîåíèå çíà÷åíèÿ.

$var = 'value';

Ýòî âûðàæåíèå ÷èòàåòñÿ êàê "ïåðåìåííîé ñ èìåíåì $var ïðèñâîèòü çíà÷åíèå 'value'" èëè "äëÿ ïåðåìåííîé ñ èìåíåì $var óñòàíîâèòü çíà÷åíèå 'value'".

Âñå âûðàæåíèÿ â PHP äîëæíû çàâåðøàòüñÿ òî÷êîé ñ çàïÿòîé, à ÷àñòè âûðàæåíèÿ ðàçäåëàþòñÿ îïåðàòîðàìè. Åñëè òî÷êè ñ çàïÿòîé èëè îïåðàòîðà íåò - êîìïèëÿòîð âûäàñò îøèáêó.

 îáùåì âèäå ïðîñòûå âûðàæåíèÿ PHP ìîæíî ïðåäñòàâèòü â âèäå ñõåìû:

    <îïåðàòîð> <ïåðåìåííàÿ> <îïåðàòîð> <çíà÷åíèå> <;>

 âûðàæåíèÿõ PHP, ñòðîãî ãîâîðÿ, âñå ýëåìåíû ÿâëÿþòñÿ íåîáÿçàòåëüíûìè, êðîìå òî÷êè ñ çàïÿòîé. Íî åñëè êàêîé-òî ýëåìåíò åñòü, òî äîëæíû áûòü è âñå ýëåìåíû, êîòîðûå äîëæíû áûòü ïî ñõåìå ñëåâà.

Íàïðèìåð, âñå ýòè âûðàæåíèÿ äîïóñòèìû (õîòÿ è íå âñå èìåþò ñìûñë):

<?php
    ; // ïóñòîé îïåðàòîð
    $var1;
    $var1++;
    $var1 = 'value';
?>

Ìîæíî ïèñàòü â îäíó ñòðîêó ìíîæåñòâî âûðàæåíèé, ïðîñòî ðàçäåëÿÿ èõ òî÷êîé ñ çàïÿòîé. Íàïðèìåð, ñëåäóþùèå äâà áëîêà ñîâåðøåííî îäèíàêîâû ñ òî÷êè çðåíèÿ PHP:

<?php
    $var1 = 'âàñÿ'; $var2 = 'ïåòÿ'; $var3 = 'êîëÿ';
?>

<?php
    $var1 = 'âàñÿ';
    $var2 = 'ïåòÿ';
    $var3 = 'êîëÿ';
?>

À ýòà ñòðîêà âûçîâåò îøèáêó. Èíòåðïðåòàòîð íå cìîæåò ïðàâèëüíî îïðåäåëèòü ãðàíèöû è áóäåò ñ÷èòàòü âñþ ñòðîêó îäíèì íåêîððåêòíûì âûðàæåíèåì, ò.ê. íåò îïåðàòîðîâ-ðàçäåëèòåëåé ìåæäó îòäåëüíûìè áëîêàìè.

<?php
    $var1 = 'âàñÿ' $var2 = 'ïåòÿ' $var3 = 'êîëÿ'
?>

Âàæíîå ñâîéñòâî âûðàæåíèé - âîçìîæíîñòü âñòðàèâàíèÿ èõ îäíî â äðóãîå. Ò.å. âûðàæåíèå ìîæåò áûòü ÷àñòüþ äðóãîãî, áîëåå êðóïíîãî, âûðàæåíèÿ, íàïðèìåð, ôðàãìåíò

<?php
    $n = 'Âàñÿ';
    $f = ' Èâàíîâ';
    $result = $n . $f;
    echo $result;
?>

ïîëíîñòüþ àíàëîãè÷åí ýòîìó ôðàãìåíòó

<?php
    $result = ($n = 'Âàñÿ') . ($f = ' Èâàíîâ');
    echo $result;
?>

Îïåðàòîð "." (òî÷êà) èñïîëüçóåòñÿ â PHP äëÿ îáúåäèíåíèÿ äâóõ ñòðîê â îäíó.

Ñîñòàâíûå âûðàæåíèÿ èíòåðïðåòàòîð àíàëèçèðóåò, âûáèðàåò íàèáîëåå ãëóáîêî âëîæåíûå âûðàæåíèÿ è âûïîëíÿåò èõ. Ïîñëå ýòîãî ïîäñòàâëÿåò ðåçóëüòàòû â áîëåå êðóïíîå âûðàæåíèå, âû÷èñëÿò èõ è ò.ä, ïîêà íå áóäåò âû÷èñëåíî âñ¸ âûðàæåíèå.

Ïîñëåäîâàòåëüíîñòü âûïîëíåíèÿ âûðàæåíèé îäíîãî óðîâíÿ îïðåäåëÿåòñÿ ñòàðøèíñòâîì (ïðèîðèòåòîì) îïåðàòîðîâ, èñïîëüçóåìûõ â âûðàæåíèÿõ. Ñòàðøèíñòâî îïåðàòîðîâ PHP ìû ïîäðîáíî ðàññìîòðèì â íà÷àëå ñëåäóþùåé ãëàâû. Ñòðîãî ãîâîðÿ, ïî÷òè ïîëîâèíó ìàòåðèàëà âû óæå çíàåòå èç øêîëüíîãî êóðñà ìàòåìàòèêè :).

Íàïðèìåð, ïðè âûïîëíåíèè êîäà

    $k = 3;
    $n = (($f = 1000/$k + 3) > 100);
    echo $n;

PHP ñëåäàåò ñëåäóþùèå øàãè:

Âñå âûðàæåíèÿ PHP ðàçäåëÿþòñÿ íà äâå áîëüøèõ ãðóïïû (ïî òèïó çíà÷åíèé): ñêàëÿðíûå è êîìïëåêñíûå. Ê ñêàëÿðíûì çíà÷åíèÿì îòíîñÿòñÿ òîëüêî òå, êîòîðûå íåëüçÿ "ðàçîáðàòü" íà îñìûñëåííûå ñîñòàâëÿþùèå. Ïðèìåð ñêàëÿðíîãî çíà÷åíèÿ - ñòðîêà. Êîíå÷íî, ìîæíî ðàçäåëèòü ñòðîêó íà îòäåëüíûå ñèìâîëû, íî ýòî óæå áóäåò íå ñòðîêà, à áåññìûñëåííûé íàáîð ñèìâîëîâ.

Ñêàëÿðíûå çíà÷åíèÿ ïîäðàçäåëÿþòñÿ íà öåëî÷èñëåííûå, ÷èñëîâûå ñ ïëàâàþùåé òî÷êîé, ñòðîêîâûå è ëîãè÷åñêèå.Îñîáåííîñòè ðàáîòû PHP ñ ðàçëè÷íûìè òèïàìè çíà÷åíèé ìû ðàññìîòðèì â ñëåäóþùåì óðîêå.

Ïðèìåðû ñêàëÿðíûõ âûðàæåíèé:

    // ñòðîêîâûå
    $str = 'ÿ - ñòðîêà';
    $str .= ' PHP';

    // öåëî÷èñëåííûå
    $k = 3;
    $k += 10;

    // ÷èñëîâûå ñ ïëàâàþùåé òî÷êîé
    $float = 11.23;
    $otherFloat = $float/100;

    // ëîãè÷åñêèå
    $x == $y;
    $z > 100;

Êîìïëåêñíûå âûðàæåíèÿ ìîãóò áûòü ðàçäåëåíû íà ÷àñòè òàê, ÷òî êàæäàÿ ÷àñòü áóäåò èìåòü êàêîé-òî ñìûñë. Òàêèõ âûðàæåíèé â PHP 2: ìàññèâû è îáúåêòû, íî î íèõ ìû ïîãîâîðèì â ñîîòâåòñòâóþùèõ óðîêàõ.



 íà÷àëî ñòðàíèöû



 íà÷àëî ñòðàíèöû