Blog

PHPUnicorn

For Pi Day 2017 I created a really fun project - the PHPUnicorn!

A simple PHPUnit listener collects test results and sends them to a Raspberry Pi Zero Wireless device in real-time.  As the device receives the stats it lights up LEDs green, red, or orange to visualize the progress and results of your unit tests.

 

TIL that Doctrine 2 doesn't support LIMITs within subqueries which can be frustrating. In my case, I wanted to LEFT JOIN on a table using a subquery with a single result - something like this:

$dqb->from('MyAppBundle:Foo', 'foo')
    ->leftJoin('foo.bar', 'bar', 'WITH', 'bar = (SELECT b FROM MyAppBundle:Bar b WHERE b.foo = foo AND b.published_date >= :now ORDER BY t.startDate LIMIT 1)');

But Doctrine kept throwing this error:

 

 

With the imminent release of PHP 7 on the horizon, I thought it would be cool to check out some of the lesser-known features coming with the 7.0.0 release:

1. Array constants in define()

PHP 5.6 added the ability to define array constants on classes by using the const keyword:

const LUCKY_NUMBERS = [4, 8, 15, 16, 23, 42];

PHP 7 brings this same functionality to the define() function: