$PHP = đź’©;

Simon Yousoufov argues that PHP is going the way of the dodo. It’s well known that PHP is a dead programming language and that its 22-year-old ecosystem is effectively useless now that we have Node and its fancy new asynchronous frameworks. Node’s superiority is evident because everyone knows that single-threaded, asynchronous, programs are better by […]

Continue reading →

PHP UK Conference 2017 videos have been released

PHP Uk Conference is an excellent conference where I had the pleasure of speaking this year. All sessions were recorded. Last week the organizers released all the videos. Here’s the entire playlist: https://www.youtube.com/playlist?list=PL_aPVo2HeGF-_djRi_UVWWLdkVpYQFnFm Freek Van der Herten Freek Van der Herten is a partner and developer at Spatie, an Antwerp based company that specializes in […]

Continue reading →

A conversation on laravel-html

Hi, how are you? I’m fine thanks! How are you? I saw you released another package last week. Yup yup, you mean laravel-html, right? It was actually coded up by my colleague Sebastian, who did an awesome job. But why put out yet another html generator? Html generation is a solved problem, right? Yes, it […]

Continue reading →

A package for snapshot testing in PHPUnit

My colleague Sebastian recently released a new package called phpunit-snapshot-assertions. In a new post on his blog he tells all about it. The gist of snapshot testing is asserting that a set of data hasn’t changed compared to a previous version, which is a snapshot of the data, to prevent regressions. The difference between a […]

Continue reading →

How to set up your Laravel application for zero-downtime deploys

On his blog Matt Stauffer published a new post explaining the steps required to deploy your app without any downtime. The reason you’re getting zero-downtime deploy from these tools is because the entire deploy process—clone, composer install, etc.—doesn’t happen in the directory that is currently serving your site. Instead, each new release gets its own […]

Continue reading →

Partial model updates in Laravel

Michael Dyrynda, one of the co-hosts of the Laravel News and the North Meets South podcasts, explains how to easily uptime your models with data coming from requests. Instead of littering your controller method with multiple request()->has(‘field’) checks, you can employ the request object’s intersect method. The intersect method will return a new array containing […]

Continue reading →

Visualizing PHPUnit Tests

In an article on the Hackster.io site explains in detail how he made a nice visualization of unit test results. Pretty cool what you can do with a raspberry pi, some LEDS and a couple of scripts. I wanted to create a desktop gadget to visualize the progress of unit tests run via PHPUnit.I’ve named […]

Continue reading →

Understanding Laravel’s HighOrder Collections

One of my favourite features that was introduced in Laravel 5.4 are the higher order collection functions. It allows you to rewrite collect($models)->filter(function(Model $model) { $model->passesFilter(); }); to: collect($models)->filter->passesFilter(); This works with the filter method an a bunch of other collection methods. In a new post on his blog Nicola Malizia explains how these methods […]

Continue reading →

Closure Binding as an alternative to “use” variables

On his blog Mark Baker shares some thoughts on how to use closure binding to avoid having import variables with the use keyword. You’ll learn how to rewrite $filteredArrayData = array_filter( $arrayData, function($value) use ($minimumPrice, $maximumPrice) { return $value->price >= $minimumPrice && $value->price < $maximumPrice; } ); to $filteredArrayData = array_filter( $bookData, $priceFilter->inRange(5.00, 15.00) ); […]

Continue reading →

A Laravel package to impersonate users

A great feature of Laravel Spark is it’s ability to impersonate other users. As an admin you can view all screens as if you are logged in as another user. This allows you to easily spot a problem that your user might be reporting. Laravel-impersonate is a package, made by MarceauKa and Thibault Chazottes that […]

Continue reading →