Archief - INFO: PHP5 released!

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

dJeez

Legacy Member
Ok, het is (eindelijk) zover : PHP5 is uit!

Nu kan het testen van de oudere sites op eventuele backwards compatibility problemen (ik verwacht/hoop er geen te vinden) pas echt beginnen :p.

servi

Legacy Member
komt recht van www.php.net :
Some of the key features of PHP 5 include:



  • The Zend Engine II with a new object model and dozens of new features.
  • XML support has been completely redone in PHP 5, all extensions are now focused around the excellent libxml2 library (http://www.xmlsoft.org/).
  • A new SimpleXML extension for easily accessing and manipulating XML as PHP objects. It can also interface with the DOM extension and vice-versa.
  • A brand new built-in SOAP extension for interoperability with Web Services.
  • A new MySQL extension named MySQLi for developers using MySQL 4.1 and later. This new extension includes an object-oriented interface in addition to a traditional interface; as well as support for many of MySQL's new features, such as prepared statements.
  • SQLite has been bundled with PHP. For more information on SQLite, please visit their website.
  • Streams have been greatly improved, including the ability to access low-level socket operations on streams.
  • And lots more...
allemaal leuke dingen dus :)
en je kan vooral meer doen met klassen.


kijk maar eens hoe eenvoudig het wordt om iets uit mysql4 op te vragen :

PHP:
 $database = new mysqli("localhost", "my_user", "my_password", "world");
 
 
 $query = 'SELECT * FROM tabel';
 
 
 
 if ( $uitvoer = $database->query($query) )
 while ( $rij = $uitvoer->fetch_object() ) {
 
    echo $rij->id;
    echo $rij->tekst;
 
 }
 
 $uitvoer->close();
 }
 
 $database->close();

DarkBone

Legacy Member
Finally :applause:

Alhoewel het OO model hier en daar naar mijn mening toch uitgebreider had gekund, maar soit :D

killgore

Legacy Member
DarkBone zei:
Alhoewel het OO model hier en daar naar mijn mening toch uitgebreider had gekund, maar soit :D
het OO model is uitgebreid genoeg, enkel het concept van overloading mssch, maar da heb ek al is genoeg me u besproken :p.

Eindelijk kan ik nu men php5 classes gebruiken, ik hoop dat het snel geïntegreerd raakt :D.

1 nadeel: er gaat nog meer onnodig gebruik gemaakt worden van OOP :(.

edit: @servi, tbh vind ik die mysqli niet zo goed, een eigen db-klasse is mssch wel iets trager maar ehm, 'beter'.

servi

Legacy Member
@servi, tbh vind ik die mysqli niet zo goed, een eigen db-klasse is mssch wel iets trager maar ehm, 'beter'.

een pak trager dan wel :)

killgore

Legacy Member
servi zei:
een pak trager dan wel :)
mja, tbh: wnnr gade echt nood hebben aan die mysql-snelheden????
Ge kunt een eigen db-klasse toch altijd iets functioneler schrijven vind ik.

servi

Legacy Member
mja, tbh: wnnr gade echt nood hebben aan die mysql-snelheden????

bwoa wat dacht van een forum zoals dit om geen server-too-busy boodschappen te krijgen ;)

( hier zou dat dus echt nuttig zijn, maar ja tegen dat die van vbulletin hebben gehoord van het bestaan van mysqli .... )


Daarom ben ik ook wel eens benieuwd of invisionboard mysqli gaat implementeren voor betere snelheid.

In ieder geval ik ben er blij mee, in plaats van een hele database-klasse te schrijven, heb ik nu nog enkel 2 of 3 functies nodig.

mrjack

Legacy Member
Ik ben nu juist begonnen met php 4.0 te leren ( boek ) :( dat maakt niet veel verschil zeker? Ofwel :sad:

Ansur

Legacy Member
mrjack zei:
Ik ben nu juist begonnen met php 4.0 te leren ( boek ) :( dat maakt niet veel verschil zeker? Ofwel :sad:
Maakt idd wel wat verschil. Niet zozeer qua syntax, maar PHP5 implementeerd den ZEND engine zodat je OO ondersteuning hebt. En des te eerder je in OO begin te denken/programmeren, des te beter.

killgore

Legacy Member
Ansur zei:
Maakt idd wel wat verschil. Niet zozeer qua syntax, maar PHP5 implementeerd den ZEND engine zodat je OO ondersteuning hebt. En des te eerder je in OO begin te denken/programmeren, des te beter.
1) PHP4 en 3 gebruikten ook al zend engine, php5 gebruikt de zendII engine.
2) OO denken is in php pas laat nodig, als je te snel in oo denkt ga je onnodig gebruik hiervan maken zoals je zeer vaak ziet op het web. Je moet niet in klasses steken wat met een paar functies of gewoon 1 scriptje kan he :).

Cakeman

Legacy Member
Killgore zorgt meteen voor een mooie inleiding voor mijn vraag :)

Wanneer kan OOP bij het maken van websites van pas komen? Ik kan me wel voorstellen dat wanneer je vele grote webprojecten maakt, je bepaalde zaken in een class kan stoppen en zo hergebruiken... Maar de gemiddelde PHP'er, gaat die ooit echt gebruik moeten maken van OOP?

killgore

Legacy Member
hm

Waarvoor OOP handig kan zijn:
-routines die je vaak moet uitvoeren, zoals bv. mysql-functies, file-handling functies, ... .
-Grote systemen, bv. een templatesysteem, die je simpel toegankelijk wilt maken ;). Een deftig templatesysteem bv. heeft maar enkele public functions die dan nog zo weinig mogelijk params aannemen :). Toch kan zo een templatesysteem al rond de 500 regels code innemen :).
dus: een 'complex' systeem dat afhangt van meerdere functies :).
maar bv. niet zoiets:

PHP:
class Stock
{
    private $stock = array();
    public function pop()
    {
          array_pop($stock);
    }
    public function push($val)
    {
        $stock[] = $val;
    }
}
en geloof me, dit is niet uit men duim gezogen ;).

Ansur

Legacy Member
killgore zei:
Je moet niet in klasses steken wat met een paar functies of gewoon 1 scriptje kan he :).
Mistake :)

Vanaf je een iets-of-wat degelijke site wilt maken kun je best gewoon ales zogoed mogelijk OO maken. Alleen al met het oog op uitbreiding/verandering zal da direct z'n nut laten zien.

Cakeman

Legacy Member
Ansur zei:
Mistake :)

Vanaf je een iets-of-wat degelijke site wilt maken kun je best gewoon ales zogoed mogelijk OO maken. Alleen al met het oog op uitbreiding/verandering zal da direct z'n nut laten zien.
Ik ben bezig aan simplele weblog waar ik ook mijn CV en een kleine portfolio ga opzetten.
Hoe kunt ge zoiets OO maken?
Ik kan toch moeilijk een class Blog() gaan maken om code te vervangen die amper 10 regels lang is. Het enige wat ik moet doen is kijken of er een $_GET variabele met als naam 'blog' is, indien niet, de recentse 5 blog uit een database halen en echo, indien wel, enkel de blog met id=$_GET['blog'] weergeven.

Dat is toch echt te gek om daar een class voor te maken?

killgore

Legacy Member
Ansur zei:
Mistake :)

Vanaf je een iets-of-wat degelijke site wilt maken kun je best gewoon ales zogoed mogelijk OO maken. Alleen al met het oog op uitbreiding/verandering zal da direct z'n nut laten zien.
Omg, dat bedoel ik dus met nutteloos :).

Een simpele functie is even flexibel. (of zou toch zo moeten zijn).

alles OOP maken is ronduit belachelijk :). Zoals ik zei: een systeem OOP maken, dat kan je doen, met jouw oog op uitbreiding/verandering.

Een site volledig OOP maken is gewoon overpower, OOP is nu eenmaal niet het snelste deel van php ook he ;).

Ik gebruik nu voor een bepaalde site 3 klasses, er zullen er mssch nog bijkomen, maar ik vind dit al voldoende:
-Template klasse ===> Goed vb. van een groot systeem dat je aaneenkoppelt.
-Database klasse ==> Goed vb. van het bundelen van functies waar het nodig is (ik houd bv. men $db resource constant hidden, ook query results en zo).
-Treebuild klasse ===> Idem vb. als Template klasse.

Ik heb daar ook een relatief uitgebreid tutorial systeem op die site staan, maar toch is het compleet nutteloos om dat bv. in klasses te gaan steken ;).

KO

Legacy Member
killgore zei:
1) PHP4 en 3 gebruikten ook al zend engine, php5 gebruikt de zendII engine.
2) OO denken is in php pas laat nodig, als je te snel in oo denkt ga je onnodig gebruik hiervan maken zoals je zeer vaak ziet op het web. Je moet niet in klasses steken wat met een paar functies of gewoon 1 scriptje kan he :).

volledig mee eens, ik kan mij behoorlijk storen aan scripts van 1 file die enkel en alleen uit classes bestaan WTF ?
En dan nooemden ze me een noob omdat ik hetzelfde doe met simpele functies (noemden idd, ik doe al eeuwen geen php meer ^^)

Ansur

Legacy Member
Weet je, maak eens een corporate site. vanaf dat je daar met 'gewoon wat' scriptjes tussen de HTML enzo afkomt, dan kan dat mss wel werken in het begin, totdat je ineens een kleine aanpassing doet aan een bepaalde databaseveld, of dat er een bepaalde subsectie bij moet komen. Dan is je site bloated van 't kan ni meer en bij de 3e uitbreiding/aanpassing kan je opnieuw beginnen coden.

*mod* en begin niet dat da 2 verschillende dingen zijn, een gewone site en een corporate site. Des te eerder je je simpele zaken goed gaat maken, des te beter
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan