Clase si obiecte

        Ce este o clasa ?

    O clasa este o colectie de variabile si functii care opereaza asupra variabilelor respective.

    Sintaxa folosita pentru declararea unei clase in PHP este:

<?php

class nume_clasa {

// date membre

var nume_variabila_1

// ...

var nume_variabila_m*

// metode

function nume_functie_1 (parametri) {

// definitia functiei

}

// ...

function nume_functie_n (parametri) {

// definirea functiei

}

}

?>

    Pentru numele unei clase poate fi utilizat orice identificator permis in PHP cu o singura exceptie: sdtclass

    Acest identificator este folosit de PHP in scopuri interne. In PHP functiile ale caror identificatori incep cu '_' sunt considerate functii magice si utilizarea acestora nu este recomandata. In PHP, datele membre nu pot fi initializate decat cu valori constante. Pentru a initializa variabilele cu valori care nu sunt constante trebuie folosit un constructor.

    Mai jos aveti un exemplu de clasa in care initializarile nu sunt corecte:

class Nepermis {

var $data = date ('Y-m-d');

var $nume = $prenume;

var $dest = 'Ivascu' . 'Valentin';

var $obiecte = array ('orice', 'on');

}

        Obiectele

    In PHP clasele sunt considerate a fi tipuri de date; ele pot fi privite ca fiind "amprentele" variabilelor propriuzise.

Pentru a crea o variabila al carei tip este o clasa, trebuie utilizat operatorul new. In continuare, vom defini o clasa Aritmetica cu doua date membre x si y care sunt numere intregi si doua metode care realizeaza adunarea, respectiv inmultirea lor.

class Aritmetica {

var x = 2;

var y = 3;

function Suma() {

return $this -> x + $this -> y;

}

function Produs() {

return $this -> x * $this -> y;

}

}

    Pentru a crea un obiect de tipul Aritmetica, vom utiliza o instructiune de tipul:

$aritm = new Aritmetica;

    Acum putem utiliza metodele clasei; pentru a afisa suma sau produsul celor doua numere, vom putea apela cele doua metode astfel:

echo $aritm -> Suma();

echo $aritm -> Produs();

    Vom obtine rezultatele 5, respectiv 6. Valorile datelor membre pot fi si ele modificate prin instructiuni de tipul:

$aritm -> x = 5;

$aritm -> y = 4;

    Daca, in urma modificarii apelam din nou metodele Suma 9 si Produs(), rezultatele vor fi 9, respectiv 20.

    Haideti sa realizam o clasa si sa vedem cum lucreaza.

<?php

class PHP4 {

var $salut = 'Salut PHP4!';

function Salut() {

return $this -> salut;

}

}

$salutare = new PHP4;

echo $salutare -> Salut().'<br>';

?>

    Realizati o pagina cu numele clasa.php, puneti codul de mai sus, apoi testati in browser.

    In acest exemplu a fost utilizata pseudo-variabila $this.

    Aceasta este folosita pentru a indica faptul ca se opereaza asupra unei date membre a obiectului curent.

 

 

Publicitate

Give a LIKE :)