PHP Coalface

Here's the main RSS feed from PHP 7.1.2 Released on 20 February 2017

The official site has announced the release of the latest version in the PHP 7.1.x series: :

The PHP development team announces the immediate availability of PHP 7.1.2. Several bugs have been fixed. All PHP 7.1 users are encouraged to upgrade to this version.

Bugs fixed include changes for DOM handling, FastCGI, hashing (adding function), MySQL, OpenSSL and a good number of other locations. You can for the complete list. As always you can get this latest version from the (source release) or for the Windows binaries.

Playing with RabbitMQ, PHP and node on 20 February 2017

In the latest post to his site Gonzalo Ayuso shares some of the results of his , creating a queue system that both languages could talk to easily.

I need to use in one project. I’m a big fan of , but I must admit Rabbit is much more powerful. In this project I need to handle with PHP code and node, so I want to build a wrapper for those two languages. I don’t want to re-invent the wheel so I will use existing libraries ( and for node).

Basically I need to use three things: First I need to create exchange channels to log different actions. I need to decouple those actions from the main code. I also need to create work queues to ensure those works are executed. It doesn’t matter if work is executed later but it must be executed. And finally RPC commands.

He goes through some of the basics of using RabbitMQ , showing the code for each of the languages - pushing a new value into the queue, registering workers, creating Queue builders and using an exchange and receiver to process the message. The post finishes with the last piece in his requirements: creating the functionality to handle RPC commands to get an answer back from the queue.

Laravel News: Laravel Collection “tap” Method on 20 February 2017

In to the Laravel News site Eric Barnes introduces a new method that's included in Laravel 5.4.10: the "tap" method.

Laravel 5.4.10 introduces a new tap method on collections which allow you to “tap” into the collection at a specific point and do something with the results while not affecting the main collection.

He includes an example, showing a sample array of user data and how, after converting it into a collection, he can "tap" into it at any point. He tapping pulls out the name of the current record following a "where" to locate the matching value. The quick post ends with a look at how the "tap" method is different from "pipe". Essentially the difference is that using "pipe" returns a different collection, potentially with modified data while "tap" does not.

That Podcast: Episode #38 - Bullet on 20 February 2017

That Podcast, hosted by Beau Simensen and Dave Marshall, has posted their latest episode - :

Beau and Dave discuss Sunshine PHP, Bullet Journaling, Mockery and Symfony Experiments.

Other topics mentioned include , the , and . You can listen to this latest episode either through the or by . If you enjoy the show, be sure to and for the latest updates when new shows are released.

SitePoint PHP Blog: Achieving Modular Architecture with Forwarding Decorators on 17 February 2017

The SitePoint PHP blog has a tutorial posted from author Eugene Dementjev covering to create a more modular architecture for your application.

As your web application becomes larger, you certainly start to think more about designing a flexible, modular architecture which is meant to allow for a high amount of extensibility. There are lots of ways to implement such architecture, and all of them circle around the fundamental principles: separation of concerns, self-sufficiency, composability of the parts of an app.

There is one approach which is rarely seen in PHP software but can be effectively implemented — it involves using native inheritance to provide manageable patching of the software code; we call it the Forwarding Decorator.

The post starts out by defining the modular architecture and some of the basic concepts involved (including a flow graph or two). Then comes the examples - how as basic version of the system could be used, multiple modules modifying a single class and hooks/patching the code.

Also from, here are some Security links:

No channel data


It's quiet in here...Add your comment