Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Prozedurale und Objekorientierte PHP-Sprache [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
brauche Webseite ideal für Vereine und Firmen
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Prozedurale und Objekorientierte PHP-Sprache


 
sapar
13-06-2007, 18:05 
 
Hallo Leute,

ich habe eine bescheidene Frage:
Wenn ich mit PHP auf eine Datenbank zugreife, dann habe ich die Möglichkeit entweder Prozedural oder Objektorientiert zuzugreifen.

Also entweder so (Objektorientiert):

@ $db = new mysqli('localhost','user','password','dbname');

$db->select_db(dbname);
$query = "SELECT * FROM beispiel";
$res = $db->query($query);



oder so (Prozedural):


@ $db = mysqli_connect('localhost','user','password','dbname');

mysql_select_db($dbname, $db);
$query = "SELECT * FROM beispiel";
$res = mysql_query($query, $db) or die (mysql_error());


Jetzt meine Frage:
Wo liegt der Unterschied? Und wann wende ich welche Variante an? Oder ist es egal welche man wählt?

Gruß, sapar !!

 
Kropff
13-06-2007, 19:01 
 
Wo liegt der Unterschied?
hast du doch schon selber gesagt. :)
Und wann wende ich welche Variante an? Oder ist es egal welche man wählt?
in dem beispiel ist es imho ziemlich lattens, wie du arbeitest. wenn du allerdings eine saubere sql-klasse hast, so kannst du die immer wieder verwenden. bei der prozeduralen weise ist das schwieriger. eine einführung zum thema oop (http://www.peterkropff.de/site/oop/oop.htm) gibts bei mir.

gruß
peter

 
Kathal
20-06-2007, 01:24 
 
Bei mehren Functionen einer "Sorte" ist OOP zu empfehlen ;) arbeitet
wesendlich schneller als wenn man sonst wie viele einzelnde Functionen
rum fliegen hat. Aber OOP lohnt sich eigendlich erst ab PHP5 da viele
Functionen der OOP erst ab da verfügbar sind und man somit wesendlich
besser mit Klassen umgehen kann...

 
ghostgambler
20-06-2007, 11:12 
 
Original geschrieben von Kathal
Bei mehren Functionen einer "Sorte" ist OOP zu empfehlen ;)
hä?
arbeitet
wesendlich schneller als wenn man sonst wie viele einzelnde Functionen
rum fliegen hat.
OOP ist pauschal erstmal langsamer als prozedurale Programmierung, das ist unabhängig von der Anzahl der Funktionen... der Code ist da, so oder so, und oop ist langsamer als prozedural.

 
Kathal
20-06-2007, 13:38 
 
Nein das muss nicht sein ;) wie gesagt hast du z.B. wrapper Functionen
für oci8 was eine Menge an Functionen mit sich bringt und eine Klasse
als wrapper für oci8 ist eine Klasse besser zu verwenden als prozedural
auf die einzelnden Functionen zu zu greifen... Sorry hab mich nur etwas
falsch ausgedrückt kein wunder bei der Uhrzeit :rolleyes:

Was ich damit sagen wollte das OOP nur wirklich seinen nutzen zeigt
wenn man etwas größere Dinge schreibt so wie z.B. eine ganze Wrapperklasse
für MySQL oder ähnliches wo die Functionssammelung recht umfangreich
ist ansonsten ist es natürlich besser prozedural zu zu greifen.

 
ghostgambler
20-06-2007, 14:30 
 
Besser zu verwenden, ja
schneller, nein


Alle Zeitangaben in WEZ +2. Es ist jetzt 21:43 Uhr.