Lustiger Artikel über die Anzeichen, dass man ein schlechter Programmierer ist: (englisch)
http://badprogrammer.infogami.com/
Lesenswert!
Lustiger Artikel über die Anzeichen, dass man ein schlechter Programmierer ist: (englisch)
http://badprogrammer.infogami.com/
Lesenswert!
Wieder einmal lange gesucht um eine eigentlich logische Lösung zu finden.
Wer in Dojo “disabled” für CurrencyTextBox oder andere spezielle Input-Felder verwendet , kann die mit .set(‘value’,???) gesetzten Werte nicht formatieren und dadurch war mein erster Gedanke auf readOnly zu gehen. Dabei war aber wieder das Problem, dass beim durchTaben
durch das Formular diese Felder, welche ich z.B. für eine Berechnung nicht vom Benutzer ausfüllen lassen will mit fokusiert werden. Abhilfe schafft dabei den guten alten TabIndex zu setzen. Weiterlesen
Heute war es so weit und ich durfte die Zend PHP 5.3 Prüfung im WIFI in Salzburg ablegen. Erst gab es eine kleine Einweisung der Mitarbeiterin des Wirschaftsföderungsinstitutes und man musste nach Vorlage der beiden Identifikationsbestätigungen zwei Unterschriften leisten. Schon sitzt man vor einem PC und ist dabei die 70 zufälligen Fragen in 90 Minuten zu beantworten.
Von der Schwierigkeit her, muss ich gestehen, dass ich die Prüfung etwas unterschätzt habe und es doch mehr ins Detail geht als erwartet. Gestellte Fragen darf ich laut Zend ja nicht veröffentlichen.. aber man sollte in die Prüfung viel Programmierpraxis mitbringen und auch davor viele Sachen, die man normalerweise nicht ausprobiert einfach mal testen. Wie z.B. den Rückgabewert von print(). Weiterlesen
Zwei interessante Artikel über die Verwendung von Smarty und Konsorten und warum man keine Template-Engine verwenden sollte.. Weiterlesen
Wer auf der Suche nach einer guten Seite für Reguläre Ausdrücke in PHP ist, macht mit http://mikiwiki.org/wiki/PHP/Regul%C3%A4re_Ausdr%C3%BCcke nichts falsch. Finde ich persönlich besser als die Erklärung auf php.net zu RegEX.
Ein kleiner Artikel über die mächtigen Joins in SQL. Da ich, muss ich ehrlich zugeben, wenig Joins benutze versuche ich hier das Thema nochmal zu vertiefen. Als Beispieltabellen benutze ich folgende zwei Tabellen books und book_chapter in einem sind die Titel und Autoren hinterlegt und in letzterer die Kapitel zu jeder book.ID. So sehen sie aus: Weiterlesen
Fatal error: Can’t inherit abstract function SampleInterface::loadSample() (previously declared abstract in AbstractSample) in {PFAD} on line 5
Wer diese Fehlermeldung erhält hat einen, wie man ja sieht, Fehler begangen.
Was in anderen OOP-Sprachen, wie z.B. Java möglich ist führt in PHP zu diesem fatalen Fehler: Weiterlesen
Manchmal ist es nicht ganz klar wann man eine abstrakte Klasse und wann man ein Interface benutzen sollte.
Was ist eine abstrakte Klasse?
Eine abstakte Klasse kann nicht instanziiert werden. Sie wird verwendet um gemeinsame Methoden, welche später von abgeleiteten Klassen verwendet werden zu deklarieren und muss mindestens eine abstrakte Methode haben, welche die Kindklasse selbst definieren muss.
Ein Beispiel:
abstract class Car {
private $km;
#Diese Methode KANN in einer abgeleiteten
#Klasse gleich bleiben
public function moveForward($km){
$this->km += $km;
}
#Diese Methode MUSS neu definiert werden
abstract function openRoof();
}
Die Klassen die wir nun von dieser abstrakten Klasse ableiten würden könnten alle fahren, aber jede Klasse müsste eine eigene openRoof() Methode definieren. Das wäre der Fall, wenn man jetzt ein Cabrio mit automatischem Dach und eines mit manuellem Dach ableiten würde. Vorteil ist, dass wir uns die Definition der moveForward()-Methode in jeder Kindklasse sparen. Weiterlesen
PDO steht für PHP Data Objects und wird seit PHP 5.1 mit diesem ausgeliefert und ist damit sofort verfügbar. Ich habe, als ich vor Jahren mit PHP angefangen habe, alles mit MySql aber nur prozedural programmiert. Später bin ich dann auf die MySqli Klasse umgestiegen um einfach alles objektorientiert zu halten.
Da ich gerade dabei bin ein kleines Framework zum üben zu programmieren wollte ich mir mal die PDO-Erweiterung anschauen. Was sie kann und wie sie zu verwenden ist.
Das tolle an PDO ist ja, dass man alles abstrahiert, was ja in der objektorientierten Welt da draußen ja sowieso das A und O ist. Stichwort: Wiederverwendbarkeit. Was ist nun, wenn man ein Framework / eine Webanwendung für einen Clienten programmiert und dann ändert sich aufeinmal (weil die Firma z.B. einen MsSql-Server erstanden hat
) die Datenbank auf der die Anwendung laufen soll.. Dann heißt es alles umprogrammieren, vllt gewisse Features weglassen und durch andere ersetzen. Das kostet Zeit und Nerven. Die man natürlich nicht hat. Da kommt PDO ins Spiel. Man entwickelt seine Anwendung nur gegen diese Klasse, egal welche Datenbank im Hintergrund läuft. Die Datenbank ist austauschbar! Weiterlesen
In Php stellt man sich ja oft die Frage, welche Funktion man nun nehmen sollte.. man hat (fast) immer mehrere Möglichkeiten etwas bestimmtes zu erreichen. So auch bei der kleinen Suche nach bestimmten “Nadeln” im “Heuhaufen”.
Wer in Strings das Vorkommen einen anderen Strings sucht landet bei strstr() oder strpos(). Aber was ist der Unterschied? Beim Suchen ob etwas bestimmtes in einem Text steht gibt es so keinen Unterschied. Das finden beide Funktionen heraus. Weiterlesen