PHPGangsta - Der praktische PHP Blog

PHP Blog von PHPGangsta


Archive for 2015

PHP 7: Migration eines Projekts

with 10 comments

PHP 7Noch knapp einen Monat warten, dann erscheint das Christkind PHP7! Was gibt es also schöneres als sich damit zu beschäftigen und erste Erfahrungen zu sammeln?

Im Januar habe ich mir speziell den Arbeitsspeicherverbrauch von PHP 7 angeschaut, die ChangeLogs verinnerlicht, es kompiliert und ein paar Testzeilen ausgeführt. Das lief schon sehr gut, aber um größere Projekte laufen zu lassen mangelte es noch an einigen Extensions. Außerdem wollte ich ein Zend Framework 1 Projekt testen, und ZF1 war zu dem Zeitpunkt noch nicht PHP 7-kompatibel.

Doch das hat sich geändert. ZF1 ist seit Mai 2015 mit Version 1.12.12 PHP 7 kompatibel, und auch die von mir benötigten Extensions wurden umgebaut, sodass es nun PHP 7-kompatible Branches vieler Extensions auf Github gibt.

Die Vorgehendweise: Neueste PHP 7 Version herunterladen, kompilieren, Extensions herunterladen, kompilieren, und dann SPASS HABEN!

Also los! PHP 7 RC5 kompilieren

Weiterlesen »

Written by Michael Kliewe

Oktober 24th, 2015 at 6:30 pm

Posted in PHP

Tagged with , , , , , ,

Gewinner der Verlosung für die code.talks 2015

with 3 comments

code.talks 2015Die Zeit ist um, ein Gewinner für das code.talks 2015 Freiticket muss bestimmt werden. 14 gültige Teilnehmer sind im Pott. Die richtige Antwort lautete natürlich: „Developer Conference“.

Max hat leider an die Key ID 79D56D60 verschlüsselt, die Key ID an die verschlüsselt werden sollte lautete jedoch A08ED813. Leider hat Max nicht auf meine E-Mail reagiert, ich hatte ihn darauf hingewiesen, er kann leider nicht teilnehmen an der Verlosung.

Wer von euch 14 hat gewonnen? Das Freiticket für die Konferenz geht an:

Weiterlesen »

Written by Michael Kliewe

Mai 27th, 2015 at 5:59 pm

code.talks 2015: Gutscheine und Freiticket!

with 21 comments

Die code.talks, die meines Wissens nach größte Webentwickler-Konferenz in Deutschland, findet auch dieses Jahr wieder statt und wird 1500 Entwickler begrüßen in Hamburg. Da sie in den letzten Jahren immer ausgebucht war und auch dieses Jahr wieder damit zu rechnen ist (nach 2,5 Monaten ist bereits über ein Drittel der Tickets verkauft), bin ich für euch an die Veranstalter herangetreten und habe um eine Aktion für meine Leser gebeten, und siehe da: Ich hatte Erfolg!

code.talks 2015Ich habe Gutscheincodes für euch, und auch ein Freiticket zu vergeben. Wie ihr die bekommt steht weiter unten.

Ende September, genauer am 29. und 30. September, werden alle 8 Säle im Cinemaxx Hamburg-Dammtor gefüllt und 112 Sessions mit Themen rund um Webentwicklung (PHP, Javascript, DevOps, Big Data, UX/Frontend, Skalierung, Infrastruktur, Mobile, Startups uvm.) werden viel Wissen vermitteln. Als Sprecher sind bereits an Bord: GitHub, StackOverflow, Zalando, Wooga, Jimdo, InnoGames, Cloudera und viele mehr. Der Call-for-Papers läuft noch, und die Liste wir garantiert viele weitere interessante Leute und Firmen beinhalten die aus der Praxis erzählen. 2 Tage volles Programm, incl. Frühstück, Mittagessen, Afterwork-Party, riesige Leinwände, bequeme Sessel und Popcorn & Nachos bis zum Umfallen 😉

Weiterlesen »

Written by Michael Kliewe

Mai 13th, 2015 at 1:52 pm

PHP 7 Feature Freeze

with 3 comments

PHP 7 wird großartig, ich freue mich schon sehr darauf! Ich hoffe dass der straffe Zeitplan eingehalten werden kann, und wir im Oktober/November die Version 7.0 in den Händen halten.

Vor 2 Wochen war der Feature-Freeze, und alle Abstimmungen die noch liefen sind beendet, es stehen also nun mehr oder minder alle Features fest die drin sein werden. Im großen und ganzen wissen wir nun was uns in PHP 7 alles erwarten wird.

Hier stelle ich folgende Features von PHP 7 vor:

  1. Performance
  2. Skalare Typehints
  3. jsond
  4. Coalesce-Operator
  5. Engine-Exceptions
  6. Kontext-sensitiver Lexer
  7. Uniform Variable Syntax
  8. Abstract Syntax Tree
  9. Neue einheitliche Zufallsfunktionen
  10. weiteres

Weiterlesen »

Written by Michael Kliewe

April 2nd, 2015 at 10:58 am

Posted in PHP

Tagged with , , ,

Ein altes Navigationsmenu sortieren

with 12 comments

Ich habe eine kleine Programmieraufgabe für euch.

Ich habe ein altes Projekt, in dem ich folgende Navigationsstruktur in der Datenbank habe:

menuidparentidtitlelevelsortid
13Wurm 1.1210
26Vogel 2.1230
30Tiger 1110
46Hund 2.2240
53Katze 1.2211
60Pferd 2120
71Baer 1.1.130
83Schwein 1.3212
94Esel 2.2.130

Nun möchte ich diese Menüpunkte sortiert ausgeben, und zwar in der folgenden Reihenfolge:

Tiger 1
  Wurm 1.1
    Baer 1.1.1
  Katze 1.2
  Schwein 1.3
Pferd 2
  Vogel 2.1
  Hund 2.2
    Esel 2.2.1

Die Sortierreihenfolge muss anhand der menuid, parentid, level und sortid berechnet werden. Eine parentid verweist auf den Elternknoten, sprich er ist darunter einzusortieren. Zwei Einträge mit der selben parentid sind nach der Spalte sortid zu sortieren.

Der Wurm ist ein Kindknoten vom Tiger, der Bär ist ein Kindknoten vom Wurm. Die Katze ist auch ein Kindknoten vom Tiger, hat aber die höhere sortid, muss also nach dem Wurm einsortiert werden.

Es ist ein altes Projekt mit dieser Struktur, und die Frage ist wie man das am einfachsten und schnellsten sortiert?

Geht das ganze mit einem SQL-Query? Das wäre natürlich die beste Lösung, aber mir ist kein solcher Query eingefallen der das Problem lösen könnte.

Also muss es in PHP sortiert werden. Ich habe das ganze in ein PHP-Array gepackt und hier für euch zum Spielen bereitgestellt:

http://3v4l.org/PTuRc

Dort könnt ihr an dem Algorithmus arbeiten, sodass aus dem Ursprungs-Array das Ziel-Array wird. Nachdem ihr „eval()“ gedrückt habt könnt ihr einfach die URL hier in die Kommentare packen, nach jedem Druck auf „eval()“ wird das ganze gespeichert und versioniert.

Ich bin gespannt auf eure Lösungen!

Written by Michael Kliewe

März 11th, 2015 at 10:58 pm

Posted in PHP

Tagged with ,