HackPedia - Comunitatea Hackerilor Romani
Hacking, it security, programming, vulnerability, games, newsletter, it and c, programare, ethical hacking, exploits, information security, penetration testing, online security, web hacking,internet, antivirus, security, blocker, firewall
Lista Forumurilor Pe Tematici
HackPedia - Comunitatea Hackerilor Romani | Inregistrare | Login

POZE HACKPEDIA - COMUNITATEA HACKERILOR ROMANI

Nu sunteti logat.
Nou pe simpatie:
Lorena13 Profile
Femeie
24 ani
Bucuresti
cauta Barbat
26 - 40 ani
HackPedia - Comunitatea Hackerilor Romani / Web Design / [PHP] Operatori  
Autor
Mesaj Pagini: 1
Fire7
Membru Freak

Inregistrat: acum 18 ani
Postari: 113
II.6 Operatori
Operatori aritmetici

Exemplu Numele operației Rezultat

$a + $b Adunare Suma dintre $a și $b
$a - $b Scădere Diferența dintre $a și $b
$a * $b ?nmulțire Produsul dintre $a și $b
$a / $b ?mpărțire ?mpărțirea lui $a la $b
$a % $b Modul Restul ?mpărțirii lui $a la $b


Operatorul de ?mpărțire ('/') ?ntoarce o valoare ?ntreagă (rezultatul ?mpărțirii ?ntregi) dacă cei doi operatori sunt ?ntregi (sau dacă șirurile sunt convertite la ?ntregi). Dacă unul din operatori este număr cu virgulă mobilă, sau rezultatul unei operații returnează o valoare care nu este ?ntreagă, va fi returnată o valoare ?n virgulă mobilă.

Operatori de atribuire
Operatorul de atribuire simplă este '='. Are semnificația: valoarea expresiei din dreapta se atribuie variabilei din st?nga (variabilă simplă sau structurată).

Putem spune că instrucțiunea de atribuire este formată din trei elemente: expresia care urmează să fie atribuită, operatorul de atribuire '=' și variabila destinatară.

C?nd este executată instrucțiunea de atribuire, este evaluată expresia și valoarea rezultată este depusă la destinația specificată.

Exemplu:


$a = ( $b = 4) + 5;
/* $a este egal cu 9 si $b cu 4 */?n operațiile aritmetice și pe șiruri de caractere se pot folosi și operatorii compuși, așa cum reiese din exemplul următor (exemplul 2.6.1):

$a = 3;
$a += 5;
/* Atribuie 8 variabilei $a. Corespunde instructiunii $a = $a + 5; */

$a = "Buna";

$b .= " la toata lumea!";


/* Atribuie valoarea  "Buna la toata lumea!" variabilei $b
   (echivalent cu $b = $b . " la toata lumea!"            */De remarcat că atribuirea se face prin copiere, adică expresia din dreapta nu se modifică ?n urma atribuirii. PHP4 acceptă și atribuirea prin referință, utiliz?nd sintaxa $var = &$othervar;, dar acest lucru nu este posibil ?n PHP3. Atribuirea prin referință ?nseamnă că cele două variabile referă aceeași locație de memorie și că modificarea uneia dintre ele o afectează și pe cealaltă.

Operatori pe biți
Operatorii pe biți vă permit să mani****ți numerele ?ntregi ?n reprezentare binară.

Exemplu Numele operatorului Rezultat
$a & $b ȘI (AND) Biții poziționați pe 1 ?n $a ȘI ?n $b sunt poziționați la 1 ?n rezultat
$a | $b SAU (OR) Biții poziționați pe 1 ?n $a SAU $b sunt poziționați la 1 ?n rezultat
$a ^ $b XOR Biții poziționați pe 1 ?n $a SAU ?n $b sunt poziționați la 1 ?n rezultat
~ $a NOT Biții care sunt poziționați pe 1 ?n $a vor fi poziționați pe 0 și vice versa
$a << $b Deplasare la st?nga Deplasează biții din $a cu $b poziții spre st?nga (fiecare pas ?nseamnă multiplicare cu 2)
$a >> $b Deplasare la dreapta Deplasează biții din $a cu $b poziții spre dreapta (fiecare pas ?nseamnă ?mpărțire cu 2)

Operatori de comparație
Operatorii de comparație permit compararea a două valori.

Exemplu Numele operatorului Rezultat


$a == $b Egal Adevărat dacă $a este egal cu $b
$a === $b Identic Adevărat dacă $a este egal cu $b și ei sunt de același tip (numai ?n PHP 4 )
$a != $b Diferit Adevărat dacă $a este diferit de $b
$a < $b Mai mic dec?t Adevărat dacă $a este mai mic strict dec?t $b.
$a > $b Mai mare dec?t Adevărat dacă $a este mai mare strict dec?t $b
$a <= $b Mai mic sau egal Adevărat dacă $a este mai mic sau egal ca $b
$a >= $b Mai mare sau egal Adevărat dacă $a este mai mare sau egal ca $b



Un alt operator condițional este operatorul ternar ('?:'), care funcționează ca ?n C.

( expr1) ? ( expr2) : ( expr3);Această expresie returnează expresia expr2 dacă expr1 este adevarată și expresia expr3 dacă expresia expr1 este falsă.

Operatori de control al erorilor
PHP are un operator de control al erorilor și anume '@'. C?nd acest operator precede o expresie ?n PHP, orice eroare care poate fi generată va fi ignorată. Dacă opțiunea track_errors este activată, mesajele de eroare generate de expresie vor fi salvate ?n variabila globală $php_errormsg. Această variabilă va fi rescrisă la fiecare eroare, deci verificați-o la timp dacă doriți să o utilizați.

Exemplu:

/* Eroare SQL intentionata (apostrofuri suplimentare) */
$res = mysql_query( "select name, code from 'namelist" or
       die( "Query failed: error was '$php_errormsg'.";Operatori de execuție
PHP are un operator de execuție '``' (backticks). Este diferit de ghilimelele simple.

PHP va ?ncerca să execute conținutul dintre aceste ghilimele oblice ca o comandă shell. Rezultatul va fi returnat (nu va fi descărcat pur și simplu, ci va putea fi atribuit unei variabile).

Exemplu:


$output = `ls -al`;
echo "<pre> $output </pre>";


Operatori de incrementare/decrementare

PHP dispune de operatori de incrementare/decrementare ca si limbajul C.

Exemplu Numele operatorului Rezultat

++$a Pre-incrementare Incrementează $a cu 1, apoi ?l returnează
$a++ Post-incrementare Returnează $a, apoi incrementează $a cu 1
--$a Pre-decrementare Decrementează $a cu 1, apoi ?l returnează
$a-- Post-decrementare Returnează $a, apoi decrementează $a cu 1

Exemplul 2.6.2:


echo "<h3>Post-incrementare</h3>";
$a = 5;
echo "Obtin valoarea 5: " . $a++ . "<br>";
echo "Obtin valoarea 6: " . $a . "<br>";

echo "<h3>Pre-incrementare</h3>";
$a = 5;
echo "Obtin valoarea 6: " . ++$a . "<br>";
echo "Obtin valoarea 6:" . $a . "<br>";

echo "<h3>Post-decrementare</h3>";
$a = 5;
echo "Obtin valoarea 5: " . $a-- . "<br>";
echo "Obtin valoarea 4: " . $a . "<br>";

echo "<h3>Pre-decrementare</h3>";
$a = 5;
echo "Obtin valoarea 4: " . --$a . "<br>";
echo "Obtin valoarea 4: " . $a . "<br>";


Operatori logici
Operatorii logici sunt:

Exemplu Numele operatorului Rezultat


$a and $b ȘI (AND) Adevărat dacă $a ȘI $b sunt adevărate
$a or $b SAU (OR) Adevărat dacă $a SAU $b este adevărat
! $a NON (NOT) Adevărat dacă $a este fals
$a xor $b XOR (XOR) Adevărat dacă $a SAU $b este adevărat , dar nu am?ndouă ?n același timp
$a && $b SI (AND) Adevărat dacă $a ȘI $b sunt adevărate
$a || $b SAU (OR) Adevărat dacă $a SAU $b este adevărat


Motivul pentru care există două tipuri de 'ȘI' și 'SAU' este că ele au priorități diferite.

Precedența operatorilor
Precedența operatorilor specifică ordinea ?n care se aplică operatorii. De exemplu, ?n expresia 1 + 5 * 3 rezultatul este 16 și nu 18, căci ?nmulțirea ('*') are prioritate superioară ?n raport cu adunarea ('+').

Tabelul următor conține operatorii disponibili ?n PHP ?n ordinea crescătoare a priorităților.

Asociativitate Operatori
St?nga ,
St?nga or
St?nga xor
St?nga ȘI
Dreapta print
St?nga =, +=, -=, *=, /=, .=, %=, &=, |=, ^=, ~=, <<=, >>=
St?nga ?:
St?nga ||
St?nga &&
St?nga |
St?nga ^
St?nga &
Non-asociativ ==, !=, ===, !==
Non-asociativ <, <=, >, >=
St?nga <<, >>
St?nga +-
St?nga */, %
St?nga !, ~, ++, --, (int), (double), (string), (array), (obiect), @
St?nga [
Non-asociativ new

Operatori pentru șiruri de caractere
Există doi operatori pentru șiruri de caractere. Primul este operatorul de concatenare ('.'), care are ca rezultat concatenarea celor două argumente. Cel de-al doilea operator este operatorul de atribuire ('.='), care concatenează argumentul din partea dreaptă la argumentul din st?ngă.

$a = "Hello";
$b = $a . "World!";  // $b contine sirul Hello World!

$a = "Hello";
$a .= "World!";      // $a contine sirul Hello World!
--------------------------------------------------------------------------------
?napoi
Expresii Cuprins ?nainte
Structuri de control


pus acum 18 ani
   
Pagini: 1  

Mergi la