Schlagwort-Archive: PHP

High Performance PHP

Momentan findet die OSCON statt, O’Reillys Open Source Convention. Einen interessanten Vortrag scheint George Schlossnagle gehalten zu haben: High Performance PHP. Auf dem Blog der Zend Developer Zone wurde leider nur ein winziger Ausriss davon wiedergegeben, den wir hier eben wiederholen:

George Schlossnagle nannte in seiner Präsentation eine Top-10-Liste für Best Practices in High Performance PHP.

  1. Use a compiler cache
  2. Control your include trees to no more than 10 includes
  3. Be mindful of how you use your RDBMS (Was ist RDBMS?)
  4. Be mindful of how you use other network resources
  5. Use RegEx cautiously
  6. Always build with caching in mind
  7. Output buffering and compression are good.
  8. Watch for resource exhaustion
  9. Profile early, profile often.
  10. Dev-Ops cooperation is essential.

Auch wenn diese Punkte im Zusammenhang mit hohen Performance-Anforderungen genannt wurden, sollte man sie bei jedem PHP-Projekt im Hinterkopf haben.

Tool zur Überprüfung von Fehlern in PHP-Anwendungen

Heise berichtete gestern über ein Tool namens Chorizo, das PHP-Anwendungen auf Fehler wie SQL-, Code-Injection und Cross-Site-Scripting-Lücken sowie andere häufige Angriffsszenarien überprüft:

Ever wanted to detect security issues inside your web applications without a fuss? Then Chorizo! is for you. Scan your application as often as you want – for FREE!

Man kann das Tool zwar nicht herunterladen, aber entweder als Proxy im Browser des Überprüfenden eintragen oder über ein Webformular mit URLs speisen. Für Chorizo gibt es eine kostenlose, private Nutzung, die allerdings weniger Leistungen beinhaltet. Als zahlender Kunde kann man für 289 Euro ein Jahr lang bis zu 5 Hosts prüfen lassen und erhält einen Fehlerbericht im PDF-Format.

sudoku-masters.com

Ein guter und geschätzer Programmierer und Freund meinerseits hat es nun auch gewagt und seine ‚Spiele‘-Seite auf dem Zend Framework geschrieben.

Nicht nur, daß er sich entgegen seiner Gewohnheit durch ein Manual gelesen hat, er hat auch noch eine ebay-intensifier-Klasse im ZF – style geschrieben, die für das Zend Framework sehr interessant wäre.
(Anfragen bitte an ronsel [at] gmx [dot] de)

Nun ja … den kommerziellen Gedanken mal außer Acht gelassen ist das eine ganz interessante Seit geworden (mit ein bißchen Schnickschnack) , aber schaut es euch selber an…

Link: sudoku-masters

greetZ tucci

PS: Das layout hat die gute kruxi gemacht.

Programieren mit PHP 5

Die programmierung mit PHP5 kann man auch online erlernen. Ein Buch und ein Tutorial führen in PHP 5 ein:

Fortgeschrittene Programmierung mit PHP5 der PHPECKE
Sehr umfangreiches Tutorial, dass die verschiedenen Möglichkeiten von PHP5 beleuchtet.

Professionelle Softwareentwicklung mit PHP 5
Objektorientierung. Entwurfsmuster. Modellierung. Fortgeschrittene Datenbankprogrammierung.
Ein komplett auf den Online-Einsatz ausgelegtes Buch von Sebastian Bergmann

Leider gibt es von beiden keine PDF-Druckversion.

PHP-Poem

Ein kleines PHP-Gedicht von Martin Alterisio:

A sad poem of an algorithm where solitude brought excessive use of cpu
cycles and memory allocation for redundant data (it copied over and over
again the same image till all memory was filled with it)

$timeWaiting = 0;
while (!$you->near($me)) {
	$me->thinkAbout($you);

	switch (true) {
		case $timeWaiting < 5:
			$me->wait($you);
			break;

		case $timeWaiting < 10:
			$me->worry();
			break;

		case $timeWaiting < 20:
			$me->lookFor($you);
			break;

		case $timeWaiting < 40:
			$me->worry();
			$me->lookFor($you);
			break;

		case $timeWaiting < 80:
			$me->worry();
			$me->cry();
			$me->lookFor($you);
			$me->lookFor($you);
			$me->lookFor($you);
			break;

		case $timeWaiting < 160:
			$me->worry();
			$me->cry();
			$me->drink();
			$me->lookFor($you);
			$me->lookFor($you);
			$me->lookFor($you);
			$me->thinkAbout($you);
			$me->thinkAbout($you);
			$me->cry();
			$me->lookFor($you);
			$me->lookFor($you);
			$me->drink();
			$me->drink();
			break;

		default:
			throw new CantLiveWithoutYou();
			die(”alone”);
	}

	$timeWaiting++;
}

$me->happy = true;

via Jad’s thoughts

Entwickler-Review: WordPress

Einen für Entwickler interessanten Beitrag zu WordPress bietet broedel.org. In bisher 2 Teilen wird dort WordPress unter die Lupe genommen und hinsichlich des MVC-Prinzip betrachtet. In einem dritten Teil soll eine alternative Herangehensweise vorgestellt werden:

WordPress zerlegen (Teil 1): Aufbau dynamischer Websites

Wenn man aber unter die Haube schaut, stellt man ziemlich schnell fest, wie schlampig das gesamte Ding programmiert wurde. Und ich spreche nicht von Fehlern (obwohl auch die vorkommen), sondern von einem konsequenten und aufgeräumten Programmierstil, den man beim besten Willen nicht finden kann.

WordPress zerlegen (Teil 2): Prozeduralcode

WordPress besitzt keinen Viewer, keinen Controller, kein Datenmodell, nur eine lange Liste von Code. Auf diese Weise vermischt sich Programmcode mit Layout und Design usw. und das führt zu einem relativ starren System. Seien wir mal ehrlich: WordPress-Weblogs erkennt man auf einen Blick, oder etwa nicht?

YAE – Yet Another Experiment

Heute startet ein Experiment der besonderen Art.

Ziel: Eine Webdesignerin / Grafikerin (kruxi) wird zum Scripter in 21 Tagen. (ok, die Idee mit den 21 Tagen ist nicht sonderlich neu, aber ich habe noch von keinem wirklichen Erfolg gehört …)

Ist es wirklich zu schaffen, dass sich ein(e) Fachfremde(r) in 21 Tagen eine Scriptsprache bis zur sauberen angewandten OOP aneignen kann?
YAE – Yet Another Experiment weiterlesen