Curs Php-mysql

Aici gasiti un set de functii PHP pentru lucrul cu clase si obiecte.



1.   class_alias('ClasaOriginala', 'Alias')

- Creaza in memorie o clasa cu numele dat la 'Alias', identica cu cea a carei nume e precizat la 'ClasaOriginala'.

<?php
// Definire clasa AClas
class AClas {
  public $site = 'marplo.net';       // Proprietate
}

// Creare BClas ca alias la clasa AClas
class_alias('AClas', 'BClas');

// Creare instanta de obiect la clasa alias BClas
$obj = new BClas();

// Accesare proprietate prin instanta clasei alias
echo $obj->site;           // marplo.net
?>

2.   class_exists('NumeClasa')

- Returneaza True daca 'NumeClasa' exista, altfel, False.

<?php
// Verifica daca exista clasa AClas inainte de a crea instanta de obiect la ea
if (class_exists('AClas')) {
  $obiect = new AClas();
}
?>

3.   get_called_class()

- Se adauga in metode cu atribut "static" si returneaza numele clasei prin care acea metoda e apelata.

<?php
// Definire clasa AClas
class AClas {
  // Metoda static
  static public function Test() {
    echo get_called_class();
  }
}

// Definire clasa extinsa din AClas
class BClas extends AClas { }

// Apelare metoda test() prin ambele clase
AClas::Test();                // AClas
BClas::Test();                // BClas
?>

4.   get_class_methods('NumeClasa')

- Returneaza un Array cu metodele publice definite in 'NumeClasa'.

<?php
class AClas {
  // Metoda static
  static public function MetStaticPub() { }

  // Publica
  public function MetPub() { }

  // Privata
  private function MetPriv() { }

  // Protected
  protected function MetProt() { }
}

// Afiseaza un sir cu numele metodelor din AClas
echo implode(', ', get_class_methods('AClas'));        // MetStaticPub, MetPub
?>

5.   get_class_vars('NumeClasa')

- Returneaza un Array asociativ cu proprietatile din 'NumeClasa' care pot fi accesate, numele proprietatii la cheie, si valoarea lor.

<?php
class AClas {
  // Proprietati
  static public $propStaticPub;
  public $propPub = 'publica';
  private $propPriv = 'privata';
  protected $propProt = 'protected';
}

// Afiseaza structura Array-ului cu proprietatile din AClas
var_export(get_class_vars('AClas'));        // array ( 'propPub' => 'publica', 'propStaticPub' => NULL, )
?>

6.   get_class($Obiect)

- Returneaza numele clasei a carei instante de obiect e adaugata la parametru $Obiect.

<?php
class AClas {
  // Instructiuni 
}
// Creare instanta de obiect
$obj = new AClas();

// Afiseaza numele clasei
echo get_class($obj);        // AClas
?>

7.   get_declared_classes()

- Returneaza un Array cu toate clasele ce pot fi utilizate in script-ul curent.

<?php
echo '<pre>';
print_r(get_declared_classes());
echo '</pre>';

/*
  Afiseaza ceva similar cu:
Array
(
    [0] => stdClass
    [1] => Exception
    [2] => ErrorException
    [3] => Closure
    [4] => COMPersistHelper
    [5] => com_exception
    [6] => com_safearray_proxy
    [7] => variant
    [8] => com
    [9] => DateTime
  .............
 )
*/
?>

8.   get_object_vars($object)

- Returneaza un Array asociativ cu proprietatile din obiectul $object care pot fi accesate, numele proprietatii la cheie, si valoarea lor.

<?php
class AClas {
  // Proprietati
  static public $propStaticPub;
  public $propPub = 'publica';
  private $propPriv = 'privata';
  protected $propProt = 'protected';
}

$obj = new AClas();        // Instanta de obiect

// Afiseaza structura Array-ului cu proprietatile din $obj
var_export(get_object_vars($obj));        // array ( 'propPub' => 'publica', )
?>

9.   is_a($obiect, 'NumeClasa')

- Returneaza True daca $obiect e o instanta a clasei 'NumeClasa' sau parinti ai ei; altfel, False.

<?php
class AClas {
  // Instructiuni
}

$obj = new AClas();        // Instanta de obiect

// Verificare cu is_a() daca $obj e o instanta a clasei AClas
if(is_a($obj, 'AClas')) echo 'Corect';         // Corect
?>

10.   method_exists($obiect, 'numeMetoda')

- Returneaza True daca metoda cu numele 'numeMetoda' exista in $obiect, altfel False.

<?php
class AClas {
  // Metoda publica
  public function metPb() {}
}

$obj = new AClas();        // Instanta de obiect

// Aplicare functie method_exists()
if(method_exists($obj, 'metPb')) echo 'metPb exista';
else echo 'metPb nu exista in $obj';

// Va afisa:   metPb exista
?>

11.   property_exists($obiect, 'nume_prop')

- Returneaza True daca proprietatea cu numele 'nume_prop' exista in $obiect, daca nu exista, returneaza False, iar in caz de eroare NULL.

<?php
class AClas {
  // Proprietate
  public $functii = 'Clase si Obiecte';
}

$obj = new AClas();        // Instanta de obiect

// Aplicare functie property_exists()
if(property_exists($obj, 'functii')) echo $obj->functii;
else echo 'functii nu exista in $obj';

// Va afisa:   Clase si Obiecte
?>

- O lista completa cu functii PHP pentru clase si obiecte gasiti la pagina oficiala Functii - clase si obiecte

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Care atribut face ca optiunea din <select> sa fie selectata?
checked="checked" selected="selected" disabled="disabled"
<select name="a_name">
 <option value="val1">Optiune 1</option>
 <option value="val2" selected="selected">Optiune 2</option>
</select>
Care din aceste valori CSS creaza culoare gradient pentru fundal?
contain repeat-x linear-gradient
#id {
  background: linear-gradient(top left, #1f1, #fff, #11f);
}
Care cod creaza un array in JavaScript?
[] {} new Object()
var arr = [1, "CoursesWeb.net", "MarPlo.net"];
alert(arr[2]);
Indicati functia PHP folosita pentru redirect la alta pagina.
function() header() switch()
header("Location: http://coursesweb.net/");
exit;
Indicati articolul corect la cuvantul "garden" in propozitia: "... garden is a place with flowers".
An The A
The garden is a place with flowers.
- Gradina este un loc cu flori.
Indicati articolul corect pentru cuvantul: "jardín" (gradina)
la los el
El jardín es un lugar de flores.
- Gradina e un loc cu flori.
Functii PHP clase si obiecte

Last accessed pages

  1. Jokes - Glume, Bancuri, Humor (2) (17325)
  2. Creare Meniu Dublu (2843)
  3. PHP Functii Anonime - Closures (925)
  4. Curs si Tutoriale JavaScript (134779)
  5. Lectia 89, Recapitulare 77-78 (81)

Popular pages this month

  1. Coduri pt culori (122)
  2. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (88)
  3. Curs HTML gratuit Tutoriale HTML5 (73)
  4. Elemente principale HTML (40)
  5. Exercitii engleza - English Tests and exercises - Grammar (39)