![]() Mailinglisten-Archive |
Hallo Leute, damit ich mal bissl mehr bzgl. Klassen und Objekten usw. lernen bzw. machen will, habe ich mir mal die "Form.php" aus dem PEAR-Paket genommen und mal versucht eigene Ideen einzubringen. Als Basis diente die "Form.php" in der Version 1.15. Da diese mit "eval()" arbeitet, dachte ich mir, es geht auch anders/besser(?). Auch macht sie f�r jeden m�glichen Input-Typ eine separate Tabellenzeile ("displayTextRow()", "displayRadioRow()" usw.) Ich habe dazu das "eval()" mit "call_user_func()" ersetzt und auch die entsprechenden Paramter etwas modifiziert... Weiterhin wird in der "Form.php" jedes Attribut einzeln gesetzt ("addText(att1, att2, att3)"). Bei mir werden diese als Array �bergeben. F�r die Tabellenzeile gibt es nur noch eine Funktion und um Code zu sparen, werden die verschiedenen Inputs auch mit "call_user_func()" aufgerufen. Zus�tzlich gibts noch ein Array mit den m�glichen Attributen je Input-Typ. Am Ende steht alles in $this->_FORM, damit man es auch sp�ter wieder verwenden k�nnte. Mit microtime() habe ich mir mal die Zeiten geben lassen und musste feststellen, dass die Echte immer noch schneller ist... Ladezeit "HTML/Form.php": 0.028864 Ladezeit "_class_/form.class.inc.php": 0.008734 // Renderzeit $LF1: 0.00182 Ladezeit $LF2: 0.0016700000000001 Bei direkter Ausgabe (ohne $this->_FORM) bin ich gleich schnell, bzw. schneller (;o)): Ladezeit "HTML/Form.php": 0.032056 Ladezeit "_class_/form.class.inc.php": 0.006556 Renderzeit $LF1: 0.0016860000000001 Ladezeit $LF2: 0.0018309999999999 Wen mein Code interessiert, der melde sich. Ist halt einfach mal von mir ein Versuch, fremden Code zu verstehen und mit eigenen Ideen zu verfeinern. Wollte es euch halt mal wissen lassen... So long. -- Mit freundlichen Gr��en / Kind regards Steffen Kother
php::bar PHP Wiki - Listenarchive