PHPGangsta - Der praktische PHP Blog

PHP Blog von PHPGangsta


Archive for the ‘PHP’ Category

PHP 5.4.0 Beta1 Performance!

with 10 comments

Ich bin zufällig auf eine Präsentation über die kommende PHP 5.4.0 Version gestossen, mit einer Liste aller entfernten Features, neuer Features, aber auch interessanten Performance- und Speicherverbrauchdaten. Informationen über Features sind ja schon etwas länger bekannt, und im Changelog findet man auch viele Informationen, aber ehrlich gesagt konnte ich es nicht glauben was da bei den Performance-Tests steht, das mußte ich selbst ausprobieren.

Hier Beispiel 1 aus der Präsentation:

/php537/php micro_bench.php
    Max memory usage 1048576 bytes.
    Running 27.608 s.

/php540/php micro_bench.php
    Max memory usage 524288 bytes.
    Running 13.254 s.

Hier Beispiel 2 aus der Präsentation:

/php537/php NewObjectClassTest.php
   Running 0.20629 s , 640616 bytes.
/php537/php StaticClassTest.php
   Running 0.35047 s, 640616 bytes.

/php540/php NewObjectClassTest.php
   Running 0.12018 s, 227808 bytes.
/php540/php StaticClassTest.php
   Running 0.10803 s, 227880 bytes.

Hier Beispiel 3 aus der Präsentation:

Weiterlesen »

Written by Michael Kliewe

September 30th, 2011 at 9:27 am

Posted in PHP

Tagged with , , ,

Der Klasse neue Kleider: Traits

with 17 comments

Gastartikel von Thomas Worm.

Ich bin 23 Jahre alt und Verbundstudent bei der DATEV eG. Bereits seit Schulzeiten befasse ich mich intensiv mit der Webentwicklung in PHP. Der Erfahrungsschwerpunkt hierbei liegt auf der Programmierung barrierefreier Portalsysteme, die auf Typo3 aufsetzen (wie z.B. huerdenlos.de).

Einführung

Mit der bald erscheinenden PHP-Version 5.4 wird ein neues Sprachkonstrukt in die PHP-Welt Einzug halten, die Traits. Grob gesagt lässt sich mit diesen eine Methodengruppe definieren, die in verschiedenen Klassen durch eine use-Anweisung eingefügt werden kann. Sicherlich stoßen da nun Einige auf die gleiche Frage wie ich: „Wofür brauch ich das denn bitte? Vererbung ist doch durchaus ausreichend!“

Jain. Mit Vererbung lässt sich viel machen, doch Vererbung ist nicht immer das beste Mittel für wiederverwendbaren Code. Auch folgt PHP dem Java-OOP-Modell, bei dem nur einfache Klassenableitung (single inheritance) möglich ist. Wir können also nur von einer einzigen Vaterklasse erben.

Weiterlesen »

Written by Thomas Worm

September 27th, 2011 at 9:22 am

Posted in PHP

Tagged with ,

Mein Artikel über den Yubikey im PHP Magazin 3.11

with 10 comments

Vor 6 Monaten erschien mein Artikel über den Yubikey im PHP Magazin. Da es ein Exklusiv-Artikel war konnte ich ihn leider hier nicht posten, doch jetzt ist die Schonfrist vorbei! 😉 Für diejenigen unter euch die das PHP Magazin nicht lesen (tztztz) hier das PDF meines Artikels über den Yubikey im PHP Magazin.

Wenn ihr einen interessanten Text über PHP und verwandte Themen aus der Webentwicklung habt der sich für einen Print-Magazin-Artikel eignet meldet euch bei Björn Schotte, er wird euch dann schreiben wie das ganze abläuft, und schon habt ihr eine Publikation im Magazin und bekommt sogar noch etwas Geld dafür!

Vielen Dank an Björn sowie die damaligen Redakteure Robert Lippert und Emilian Buza für die Hilfe und Betreuung!

PS: Ich schreibe gerade an einem neuen Artikel der in einer der nächsten Ausgaben erscheinen wird, ihr dürft gespannt sein!

Written by Michael Kliewe

September 22nd, 2011 at 10:22 am

Posted in PHP

Tagged with , ,

Archivierung mit 7-Zip in PHP

with 8 comments

Um Zip-Dateien zu packen und zu entpacken wird häufig die ZipArchive-Klasse in PHP genutzt, das ist einfach und unkompliziert, Beispiele dafür befindet sich im PHP Manual. Ein weiteres verbreitetes Komprimierungsformat ist RAR, doch PHP kann damit nativ nicht umgehen. Nehmen wir an wir bekommen RAR-Dateien hochgeladen und wollen sie entpacken. Wie machen wir das?

Wir benötigen also ein externes Programm, das mit RAR-Archiven umgehen kann, und ein weit verbreitetes Open-Source-Programm ist 7-Zip. 7-Zip beherrscht noch einige weitere Formate, unter anderem auch sein eigenes 7z-Format. Es ist teilweise besser als das kommerzielle WinZip. Hier die Haupt-Features von der Webseite:

  • High compression ratio in 7z format with LZMA and LZMA2 compression
  • Supported formats:
    • Packing / unpacking: 7z, XZ, BZIP2, GZIP, TAR, ZIP and WIM
    • Unpacking only: ARJ, CAB, CHM, CPIO, CramFS, DEB, DMG, FAT, HFS, ISO, LZH, LZMA, MBR, MSI, NSIS, NTFS, RAR, RPM, SquashFS, UDF, VHD, WIM, XAR and Z.
  • For ZIP and GZIP formats, 7-Zip provides a compression ratio that is 2-10 % better than the ratio provided by PKZip and WinZip
  • Strong AES-256 encryption in 7z and ZIP formats
  • Self-extracting capability for 7z format
  • Integration with Windows Shell
  • Powerful File Manager
  • Powerful command line version
  • Plugin for FAR Manager
  • Localizations for 79 languages

Es gibt also auch ein Kommandozeilentool, das wir aus PHP heraus nutzen können! Dann mal auf:

Zuerst laden wir uns 7-Zip herunter, entweder für Linux oder für Windows (7-Zip Command Line Version). Was wir benötigen ist die 7za Executable bzw. die 7za.exe

Weiterlesen »

Written by Michael Kliewe

September 21st, 2011 at 9:57 am

Posted in PHP

Tagged with , , , ,

Linkpool Nummer 22

without comments

PHP in the Dark: Angels, Daemons & Zombies: Shellscripte, Crons, Daemons, Angel-Scripts, Inter-Process-Communication. Lesenswert!

Eine gute Diskussion bei Nils über Quick-and-Dirty Programmierung, schnell auf den Markt und dann verbessern falls das neue Feature angenommen wird, oder verwerfen, wenig Zeit verlieren:

Ulf Wendel ist „Still in love – PHP Unconference 2011 (Hamburg)“

Der neue Zend Framework 2.0 Event Manager:

Verstecktes Juwel – Zend_Crypt_Rsa:

Einfach RESTful APIs erstellen:

Written by Michael Kliewe

September 18th, 2011 at 3:24 pm

Posted in PHP

Tagged with , ,