Subscribe! Enter your email address below:

NO SPAM: We absolutely hate spam. We will not share, rent, or give away your email address to anyone.You can unsubscribe at any time. Easily!

December 21, 2017

Happy Thursday People! And for those of you celebrating this festive period, Seasons Greetings.

Following the article "REST is the new SOAP" last week, Phil Sturgeon has responded with a follow up article to clear up confusion and common misunderstandings on the subject.

Also this week, we have the fourth in the series of posts describing strategies to build modular and extensible applications, this one looking at using Inheritance.

The latest Laravel Podcast features an interview with Antonio Ribeiro, package author and master of StackOverflow Laravel.

Plus this months Drupal Spotlight has a Q&A session with some of the organisers and speakers at DrupalSouth in Auckland last month.

And finally, the French edition of SymfonyLive has been announced, taking place in Paris next March. The Call for Papers is now open, but you'd better be fluent as the whole conference will be held entirely in French.

Happy Holidays to one and all!

Katie and Ade

Please help us by clicking to our sponsor:

encrypt php scripts 
Protect your PHP Code
Why not try SourceGuardian 11. Click here to download a 14 Day Trial copy. Protect your code using Windows, Linux or Mac and run everywhere with our free Loaders.


How to Find a Niche in the WordPress Ecosystem
WordPress is simple, elegant, and modular. That combination has made it the most popular web platform on the planet, resulting in a rich ecosystem of themes, plugins and support. It’s an amazing opportunity for devs and designers, but how do you stand out in such a crowded marketplace?

The Debugging Golden Rule
Don't question others until you've questioned yourself.

My Year In The PHP Community
This is a personal recap of my path to become part of the PHP community in 2017.

A Response to REST is the new SOAP
Enough people have asked me about the article REST is the new SOAP that I felt it justifies a write up. Before I get started, I want to be clear that I hold no grudge against the author, and if any frustration leaks out in my writing I'd like to apologise in advance.

Tutorials and Talks

Modular Application Architecture - Inheritance
This is the fourth post from a series of posts that will describe strategies to build modular and extensible applications. In this post we will start looking how to use "inheritance" to create a plugin based application.

Mockery Return Values Based on Arguments
Sometimes when working with Mockery mock objects, we want to tell a mocked method to return different values for different arguments. It is a rare occasion when I need this feature, but every time I need it, I’m happy it’s there.

My VS Code Setup
I’m using VS Code as my primary editor these days and am really digging it. My setup is by no means perfect, but I've made lots of little tweaks along the way that you may benefit from. I've set up these nifty categories, so feel free to jump around and try stuff out as you go, or come back later and use it as a reference.

Deep Dive into Middlewares in Laravel
Laravel middleware is a feature in Laravel which provides a mechanism for filtering HTTP requests entering your application. This allows you to hook into Laravel request processing work flow to perform some kind of logic that decides how your application works.

Domain-Driven Design - Model
All of us model every day. A friend tells us a joke, we imagine the situation and if we model it as is intended, we find the situation funny. A customer wants to have a new functionality and while he speaks, we try to imagine what does the customer wants - we model. We are going to take a look at what is software modeling, how can we express the model and how can we capture key concepts.

Exakat 1.0.8 Review
Exakat 1.0.8 is published during the #phpadvent 2017 event on twitter. Every day, get a new tip on how to make your PHP code better. For that, Exakat keeps improving, and we have a wealth of new analysis and bug fixes for this new version. Exakat doctor reports JAVA_HOME and JAVA_OPTIONS for tuning the installation. Analysis now have you covered for Symfony and WordPress undefined classes by version, for potential mistake concatenations and for identical variables on both sides of an operator. Time to detail the exakat 1.0.8 review.

Deferring Tasks in Laravel Using Queues
In this article, we're going to explore the Queue API in the Laravel web framework. It allows you to defer resource-intensive tasks during script execution to enhance the overall end user experience. After introducing the basic terminology, I'll demonstrate it by implementing a real-world example.

Pragmatic Approach to Reinventing ORM
Gathered information helped me design and implement an alternative pattern to ORM with many important advantages and that has reinforced my belief that ORM is faulty.

New Blade Directives Coming to Laravel 5.6
Laravel 5.6 will include two new form blade directives for cross-site request forgery (CSRF) and HTTP method input.

Expressive 3 Preview
Last week, the PSR-15 working group voted to start its review phase. PSR-15 seeks to standardize server-side request handlers and middleware, and both Stratigility and Expressive have been implementing draft specifications since their version 2 releases. Entering the review phase is an important moment: it means that the working group feels the specification is stable and ready for adoption. If, after the review period is over, no major changes are required, the specification can be presented to the PHP-FIG core committed for a final acceptance vote, at which point it will be frozen and ready for mass adoption. Our plan is to have Stratigility and Expressive follow the new specification in its final form. To that end, we have been executing on a plan to prepare all our projects that work with PSR-15 to adopt the latest round of changes. That work is ready today!

Hosting Private Laravel Packages on GitLab
When we want to restrict the access to the package we made but we don’t want to pay for a service like Private Packagist, we can use GitLab and create a token based authorisation to access the package. Let’s see how!

How To Properly Manage Translations in Symfony?
We already wrote about our Symfony translation workflow some years ago. But since 2015, lots of things have evolved and it was time to update this workflow.

Laravel-medialibrary v7 Preview: Media Collections
Laravel-medialibrary is a package that can help handle media in a Laravel application. It can organise your files across multiple filesystems, generate thumbnails, optimise images and much much more.

PHP Email Validation Tutorial using the MailboxValidator API
MailboxValidator is an online Email Validation service which uses multiple types of validations to detect whether an email is valid or not. It also provides a restful API which can be used to validate a single email instantly. Read this article to learn about the MailboxValidator API and how to use it to validate email addresses in PHP.
News and Announcements

Laravel Homestead + Zend: The Best Boxed Gift
Laravel Homestead is the most popular Vagrant box for PHP developers, and with 12 million downloads, it is in fact second only to the Ubuntu vagrant box. Homestead gives you a complete, simple, and disposable Laravel stack without requiring you to install PHP, a web server, or any other server software on your machine. It Just Works. 

PHP Benelux - 26-27th January 2018, Antwerp
We are excited to announce the date for PHPBenelux 2018. Like every year we will have a theme, for this year all activities will be sports themed; Relax while watching some games, join the fun or just be a good sport. The conference is spread over 2 days: Friday afternoon (after the tutorials) and Saturday. Tutorials as well as the conference itself are spread over several parallel tracks. On Friday and Saturday evening, we’re having the conference social. This will include drinks and all the cool side activities. The last few tickets are on sale now.

Midwest PHP Conference - 9-10th March 2018, Minnesota
Midwest PHP is the FUN conference. This is our fifth annual conference, and each year it gets better and better. Our goal is to share best practices, ideas, and techniques about building state-of-the-art software applications. Blind Bird tickets are on sale now.

SymfonyLive Paris Conference - 29-30th March 2018
The French edition of the SymfonyLive conference will be entirely held in French. The Call for Papers is open, and Early Bird tickets are on sale now.

php[tek] Conference - May 31st-June 1st 2018, Atlanta
php[tek] 2018 is the premier PHP conference and annual homecoming for the PHP Community. This conference will be our 13th annual, and php[architect] and One for All Events are excited to continue to host the event in Atlanta! The Call for Papers is open for one more week.


Three Devs and a Maybe Podcast - Putting All Your Fish In One Basket
In this weeks episode Mick and Edd first touch upon the many new services/features that have been released at AWS re:Invent. We then move on to discuss Serverless architecture, Server architectural patterns, Amazon Cognito and security/encryption that is available within Amazon Web Services. This leads us on to highlight the impact of relying on a single company for all your compute/infrastructure needs and ‘putting all your fish in one basket’. Finally, Mick tells us what Santa might be bringing him for Christmas.

Interview with Davey Shafik - Voices of the ElePHPant
In this episode, Cal talks with Davey Shafik of Akamai about PHP 7.x, Akamai, and HTTP2.

Laravel IO Podcast Season 3: Episode 7 - Interview: Antonio Ribeiro
An interview with Antonio Ribeiro, package author and master of StackOverflow Laravel.

Changelog Podcast #278: Blockchains and Databases at OSCON
We went back into the archives to conversations we had around blockchains and databases at OSCON 2017. We talked with Monty Widenius, creator of MariaDB the open source forever fork MySQL, Brian Behlendorf, Executive Director of Hyperledger, the open source collaborative effort hosted by The Linux Foundation to advance blockchain technologies, and Tague Griffith, Head of Developer Advocacy at Redis Labs, the home of open source Redis and commercial provider of Redis Enterprise.

MageTalk Magento Podcast #153 – The “Epancimation” of Mimi
Magento competing with partners? Magento 2.2.2(. is Released; Phillip's all about that paper. Kalen gets a new mic technique.

Free The Geek Podcast: Episode 29 - Talking Zend Framework, Career Progression, and Conference Nerves with Matthew Weier O'Phinney
In this episode, I have the absolute pleasure of speaking with one of my mentors, Zend Framework project lead, Matthew Weier O'Phinney. In addition to being a very experienced developer, Matthew's a very thoughtful and considerate person.

PHP Ugly Podcast #86: Making Things Up
Topics include the release of Symfony 4.0.0 and the PHP Security Advent Calendar. 

php[podcast] Episode 5 - Talking Code
A look at the Talking Code issue for the month of December 2017 issue featuring articles on building an Alexa voice skill and chatbots with Laravel’s Botman project. Share your thoughts on the topics covered and leave a comment below.

Reading and Viewing

Kia Ora DrupalSouth - Stories, Insights, Drupal
This month’s Drupal Spotlight is a Q&A snapshot from some amazing speakers and organisers behind the recent DrupalSouth in Auckland, New Zealand. We look in and beyond the code at the voices and perspectives of people building in Drupal and influencing our community, including how they got into technology, and vision for the future.

Cloudways Interview - Anthony Grutter Talks About Magento
“Magento 2 seems to be getting bigger and bigger,” Anthony Grutter believes.

PHP Digest #10: New and Tools
The most long-awaited PHP 7.2.0 is finally released! Just imagine – 236 committers and 4456 commits. Sounds impressive! Wondering how to install PHP 7.2 on different operating systems? Keep on reading!

Interview with Shipyard's Creator, Italo Baeza
Over the past month, I’ve been talking to other developers who work with PHP and Docker about the tools and resources they use to make managing Docker easier. This week, I’m sharing a short interview with Italo Baeza, the creator of Laravel Shipyard, an open source project that helps Laravel developers (and really all PHP developers) get a whole local environment set up using Docker. Like Laradock, Shipyard abstracts away most of the Docker complexity and makes running containers secondary to writing code, but Shipyard is a bit simpler.


Web Engineer at Zeek
Interested in putting your PHP and WordPress knowledge to use with a small and highly focused group of people? Build and learn in a collaborative and empowering organisation.

Do you have a position that you would like to fill? PHP Weekly is ideal for targeting developers and the cost is only $50/week for an advert.  Please let me know if you are interested by emailing me at

Interesting Projects, Tools and Libraries

Dependabot creates pull requests to keep your Ruby, Python, JavaScript and PHP dependencies up-to-date.

Quark is a PHP SaaS framework, designed for using in complex projects.

Server-side image resizing and cropping on the fly with caching of generated image-files using PHP. 

PHP class for natural view management.

Dolibarr ERP & CRM is a modern software to manage your organisation's activity (contacts, suppliers, invoices, orders, stocks, agenda, ...).

The Bugsnag error reporter for PHP gives you instant notification of errors and exceptions in your PHP applications. 

SimplePie is a very fast and easy-to-use class, written in PHP, that puts the 'simple' back into 'really simple syndication'. Flexible enough to suit beginners and veterans alike, SimplePie is focused on speed, ease of use, compatibility and standards compliance.

Local development tool for PHP platforms using Docker Compose.

Gettext is a PHP (5.3) library to import/export/edit gettext from PO, MO, PHP, JS files, etc.

PHP 5.3+ web browser emulator abstraction.

PHP database migrations for everyone.

Flight is a fast, simple, extensible framework for PHP, enabling you to quickly and easily build RESTful web applications.

Please help us by clicking to our sponsor:

encrypt php scripts 
Protect your PHP Code
Why not try SourceGuardian 11. Click here to download a 14 Day Trial copy. Protect your code using Windows, Linux or Mac and run everywhere with our free Loaders.

So, how did you like this issue?

Like us on FacebookFollow us on Twitter
We are still trying to grow our list. If you find PHP Weekly useful please tweet about us! Thanks.
Also, if you have a site or blog related to PHP then please link through to our site.

unsubscribe from this list | update subscription preferences 

Subscribe! Enter your email address below:

NO SPAM: We absolutely hate spam. We will not share, rent, or give away your email address to anyone.You can unsubscribe at any time. Easily!

Talk to us!

If you have some news, want to share a link with us or chat with us feel free to email us.

And we also have an RSS feed that you can use.

Like us on FacebookFollow us on Twitter

Copyright ©