Szeretnél ingyen blogot? Regisztrálj és szerezd be saját blogodat ingyen. Folyamatosan bővülő sablonok, bővítmények.
Nézzük pár példán keresztül hogyan lehet osztályokat létrehozni és kezelni PHP-ban.
Az első példakód nem csinál mást, mint hogy létrehoz egy üres osztályt majd példányosítja azt.
<?php
/**
* PHP osztályok kezelése
* osztály létrehozása
*/
class osztaly1 {
}
// példányosítás
$obj = new osztaly1();
A második példakódban már megadjuk az osztály konstruktorát valamint a destruktorát, a konstruktor automatikusan lefut mikor példányosítjuk az osztályt, a destruktor pedig akkor fut le mikor megszünik az objektum létezni.
/**
* PHP osztályok kezelése
* konstruktor és destruktor
*/
class osztaly2 {
function __construct() {
echo 'osztály létrehozása...';
}
function __destruct() {
echo 'osztály törlése...';
}
}
$obj = new osztaly2();
A harmadik példakódban megadunk az osztályon belül tagváltozókat amiknek a konstruktorban értéket adunk majd a destruktorban kiíratjuk az értéküket.
/**
* PHP osztályok kezelése
* konstruktor paraméterekkel
*/
class osztaly3 {
// itt nem adhatunk értéket
private $p1;
private $p2;
function __construct($p1, $p2) {
$this->p1 = $p1;
$this->p2 = $p2;
}
function __destruct() {
echo 'p1:'.$this->p1.', ';
echo 'p2:'.$this->p2;
}
}
$obj = new osztaly3( 1, 2 );
A negyedik példában létrehozunk egy metódust az osztályon belül.
/**
* PHP osztályok kezelése
* metodusok használata
*/
class osztaly4 {
function echo_hello() {
echo 'hello';
}
function call_echo_hello() {
$this->echo_hello();
}
}
$obj = new osztaly4();
$obj->echo_hello();
$obj->call_echo_hello();
Az ötödik példában létrehozunk két osztályt és az egyiket a másikból származtatjuk, így elérhetőek lesznek benne a szülőben létrehozott metodusok.
/**
* PHP osztályok kezelése
* öröklés
*/
class szulo {
function teszt() {
echo 'Hello világ';
}
}
class osztaly5 extends szulo {
function __construct() {
echo 'osztaly5 indul...';
}
}
$obj = new osztaly5();
$obj->teszt();
Hamarosan folytatjuk.
MySQL lekérdezés eredményét 1 asszociatív tömbben adja vissza.
példa:
<?php mysql_connect(””, “user”, “jelszo”); mysql_select_db(”adatbazis”); $sql = mysql_query(”SELECT id, nev FROM users LIMIT 1″); $sor = mysql_fetch_assoc( $sql ); echo $sor['id']; // id echo $sor['nev']; //nev ?>
MySQL lekérdezés eredményét 1 numerikus tömbben adja vissza.
példa:
<?php mysql_connect(“”, “user”, “jelszo”); mysql_select_db(“adatbazis”); $sql = mysql_query(“SELECT id, nev FROM users LIMIT 1″); $sor = mysql_fetch_row( $sql ); echo $sor[0]; // id echo $sor[1]; //nev ?>
MySQL lekérdezés eredményét 1 tömbben adja vissza:
mysql_fetch_array( $sql_string, eredmény_tipus ) // ha nem adunk meg eredmény típust akkor számokkal és és mezőnevekkel is hivatkozhatunk a tömb elemeire:
Array
(
[0] => 1
[Azon] => 1
[1] => 2009-10-07
[Datum] => 2009-10-07
[2] => Béla
[Nev] => Béla
)
eredmény típusnak a következő paramétereket adhatjuk meg:
- MYSQL_NUM //számokkal indexelt tömb az eredmény
- MYSQL_ASSOC //asszociatív tömb az eredmény
- MYSQL_BOTH //számokkal indexelt és asszociatív is
Kapcsolódás MySQL adatbázishoz.
példa:
<?php $dbh = mysql_connect(“localhost”, “felhasznalo”, “jelszo”); if( !dbh ) die(“Nem sikerült a csatlakozás a MySQL server-hez!”); echo ‘Sikeres csatlakozás!’; mysql_close($dbh); ?>
Paraméterben átadott tömbböl eltávolítja a többször szereplő értékeket, és 1 új rendezett tömbböt ad vissza.
példa:
$tomb['user_id'] = 100; $tomb['user_name'] = ‘teszt@teszt.hu’; $tomb['email'] = ‘teszt@teszt.hu’; print_r( array_unique( $tomb ) );
eredménye
Array
(
[user_id] => 100
[user_name] => teszt@teszt.hu
)
A paraméterben átadott tömb kulcsaival tér vissza, a második paraméterben megadhatunk keresett értéket, ekkora csak azoknak az indexét adja vissza
amelyeknél az érték megegyezik a második paraméterrel.
példa:
$tomb['user_id'] = 100; $tomb['user_name'] = ‘teszt’; $tomb['email'] = ‘teszt@teszt.hu’; print_r( array_keys( $tomb ) );
eredménye
Array
(
[0] => user_id
[1] => user_name
[2] => email
)
példa #2:
$tomb['user_id'] = 100; $tomb['user_name'] = ‘teszt’; $tomb['email'] = ‘teszt@teszt.hu’; print_r( array_keys( $tomb, ‘teszt’ ) );
eredménye
Array
(
[0] => user_name
)
A paraméterben átadott tömb összes értékével tér vissza, számokkal indexelve.
példa:
$tomb['user_id'] = 100; $tomb['user_name'] = ‘teszt’; $tomb['email'] = ‘teszt@teszt.hu’; print_r( array_values( $tomb ) );
kimenete:
Array
(
[0] => 100
[1] => teszt
[2] => teszt@teszt.hu
)
Megszámolja a paraméterben átadott tömb elemeit illetve ha objektumot adtunk át akkor annak a tulajdonságait.
példa:
$tomb[0] = ‘alma’; $tomb[1] = ‘szilva’; $tomb[2] = ‘körte’; $tomb[3] = ‘kiwi’; echo count( $tomb ); //eredménye 4
másik példa:
$tomb[0] = ‘alma’; $tomb[4] = ‘körte’; $tomb[10] = ‘kiwi’; echo count( $tomb ); //eredménye 3