Think About It: PHPExcel Performance Tweaks (Part 1)
A few weeks back I covered a small article about a CSV-Tool optimized for memory usage and additionally tweaking performance.
A few weeks back I covered a small article about a CSV-Tool optimized for memory usage and additionally tweaking performance.
Am 29.09.2015 und 30.09.2015 findet in Hamburg die conference code.talks 2015 statt. Ich freue mich als Sprecher dabei sein zu dürfen und meinen Votrag "Composer for Corporate Use" zu halten. Der Vortrag stellt dar warum es Sinn macht Composer einzusetzen und wie man Composer konkret im Projektkontext im Unternehmen einsetzen kann.
Lately I have seen more and more libraries picking up PSR-3 when it comes to logging. What a lot of libaries do wrong is that they depend on a concrete implementation of PSR-3, e.g. Mongolog instead of relying on the PSR-3 interface. From what I have seen this is because loggers get instantiated directly within the class. This is not a bad thing but it couples your code to a concrete implementation of PSR-3 which in turn means that there's no interoperability.
Inspired by Ben Ramsey's blog post I thought I should share my PHP story as well. I discovered PHP in late 1999. Back then I was looking for an alternative to Perl which I used back in those days to "hack" smallish web applications. I did not really like the syntax of Perl (sorry) and it was always hard to debug on most web hosts. By accident I found PHP and loved it, well in fact I still do love it. I used PHP in 2001 in my first job where I had to develop a web-based DNS management system which was the biggest project for me back in those days.
Vom 23.06.2015 bis zum 24.06.2015 findet in London die Jenkins User Conference 2015 statt. Ich freue mich dabei zu sein und in meinem Vortrag "Jenkins for PHP projects" zu berichten wie wir Jenkins in unseren PHP Projekten einsetzen.
A little while ago I had to dive deeper into the performance optimized usage of PHPExcel. Our users are uploading files like Excel or CSV with a lot data to process. Initially we used the PHPEXcel instance without any tuning of the default configuration which lead to heavy memory issues on relativly small files. So I had to avoid reading all file content at ones to the buffer (like file_get_contents() does).
Recently I had the need to extend a Silex application to be able to return JSONP responses when needed. I was looking for a generic approach and came across a blog post by Raphael Stolt who solved the problem with a clever "after middleware". This is the code you need to add to your app.php file:
Am Montag den 09.03.2015 trifft sich zum ersten Mal die ZürichPHP Usergroup. Ich werde dort meinen Votrag "Composer for Corporate Use" halten und darstellen warum es Sinn macht Composer einzusetzen und wie man Composer konkret im Projektkontext einsetzen kann.
We are glad to be able to host two interesting workshops in our Mannheim office in May. Our friends Ross Tuck and Matthias Noback will come over to deliver their trainings on "Tactical DDD" and "Hexagonal Architecture". Tickets for both trainings can be bought on Eventbrite.
Before anybody complains: I know that "as of 2014-10-21 PSR-0 has been marked as deprecated. PSR-4 is now recommended as an alternative." - Anyway I still think this little gem makes sense to be shared because a lot of people are probably not aware of it. I recently found out by accident that it is possible pass a task name in PSR-0 style to the "taskdef" task. In the old days you had to use the Java-like dot-style notation like this and also define the classpath to make sure the class could be loaded correctly: