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!

May 2, 2019

Hello, and thanks for joining us at :)

The first release candidate for WordPress 5.2 is available this week, ahead of the 5.2 release next week. 

If you're a service provider, it makes sense to
have an appointment booking system on your site. This week we've a compilation of 14 of the best.

We also learn about Pattern Refactoring, having previously looked at anti-patterns in legacy code from a new point of view.

Plus in the latest PHPUgly podcast, the team talk about the Laminas Project.

And finally, Darkmira PHP is happening over two days in June in Brazil, with speakers presenting in English and Portuguese. Get your ticket now!

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.


14 Best PHP Event Calendar and Booking Scripts
There are several reasons PHP calendar, booking and events scripts might be a great addition to your website. If you’re a service provider, then it makes sense to have an appointment booking system on your site that allows potential customers to see your availability and select an appointment time and date that is best for them.  With all this in mind, we’ve compiled 14 of our best PHP calendar, booking and events scripts available for download.

A Brief History of the Tech Behind RAB
Keeping RiverAveBlues online has been “a thing” for me over the years.  Whether it’s when I worked at a web hosting provider and was just a fan of Mike’s writing… all the way until today, where I am getting ready to start archiving the site I’ve done my best to keep available.  Back in 2009, I did a ton of technical work for free for the guys to make sure the website stayed online and ran smoothly. To repay me, they made me a partner in the company - pretty cool, huh?

Ready to Speed Up? PHP 7.3 Is Here
There are a number of factors that can affect the speed of your website, but the version of PHP you’re currently running may be one you’ve overlooked.

6 Best Open Source PHP ETL Tools
PHP is a powerful tool for scripting code for your data operations. And it works when you build anything from a simple blog to a full-service website. PHP is a good option if you want to deliver results, but not your code, as the final output on the client side. Along with PHP, you need an ETL (Extract, Transform and Load) to pull data from your source databases, transform it and move it into your data warehouse. PHP ETL libraries are convenient for programmers because they do ETL in the command line. Check out some of the open source PHP ETLs on GitHub.

Tutorials and Talks

Protect Paid Content on Your WordPress Site Using a Free Membership Plugin
In this post, we’re going to explore the Simple Membership plugin, which allows you to set up different kinds of memberships for your WordPress site. With this plugin, you can create free and paid memberships and restrict content access based on rules for each type of member.

Managing Multiple PHP Versions Via The ondrej/php PPA
Last week, I did some system updates, and then decided to compile the most recent PHP releases. I've used phpbrew to manage multiple PHP releases for a number of years, and having it install a new version is fairly routine. Except this time, it wasn't.

How to Install PHP_CodeSniffer for VIP
Did you know that you could get much of the feedback given by the VIP team shown to you in real-time, as you code? PHP_CodeSniffer (PHPCS) is a tool that will help you write VIP-approved code by ensuring it meets the VIP coding standards.

How To Validate The Right Email Address Format in PHP?
Receiving email messages via your website or web application is an important feature and often the only way to get in contact with your customers. If you look back, how often have you got an email message from a potential customer with an invalid or wrong email address? Sure you can use advanced regular expression patterns to check the email address format, but these patterns doesn’t check if the email address really exists. This tutorial is about a double email address validation, first we check the email address format and second we validate the email addresses with an API system in PHP.

Simplifying Controllers
In this blog post, I'd like to highlight two tips to make controllers in Laravel feel much lighter.

Handy RegEx Constraints in Laravel Routes
It’s a well-known feature, but still in some cases it may require longer research to find the good regex patterns for defining constraints for our route parameters. Let’s see some idea.

Replacing All of WP Migrate DB Pro’s jQuery with React
My latest task for WP Migrate DB Pro is creating a new user interface and rewriting all the JavaScript for the plugin and addons. It is no small feat, let me tell you. Our current codebase consists of thousands of lines of relatively unorganised jQuery code. I’ve given a talk about its current state – it’s a big ‘ol ball of spaghetti! I’ve also written a bit about React in the past, but I wanted to give everyone a sneak peek, mid-dev cycle, at what it takes to rebuild a popular plugin’s JavaScript codebase using React and related tools.

Login Registration System with Email Verification in Laravel 5.8
Do you know you can make complete login registration system in Laravel 5.8 with email verification in single artisan command run. If you not know then this post will help you to learn Laravel login authentication and register with step by step guide from scratch.

PSR-14: Example - Access Voting
So far in our 5 part series we've dug into the details of Events, Dispatchers, and Providers. An awful lot of flexibility can be had from just three simple methods. But how does it work out in practice? In today's installment I want to start showing examples of real-world (ish) use cases that can benefit from this design.

422 Unprocessable Entity
The 422 Unprocessable Entity status-code does not appear in the base HTTP specification. Like 102 and 207 it’s part of the WebDAV specification, which is an extension to HTTP.

Allowing Users to Send Email With Their Own SMTP Settings in Laravel
In a recent project, I needed a way to allow users to send emails with their SMTP credentials. The goal with this was to give all the outgoing emails a more personal touch and look like it came directly from an organisation versus a generic one for the web app.

How to Install Laravel on DigitalOcean
In an age where cloud resources have become an asset, choosing the best cloud hosting provider for your Laravel website can be a ponderous task. This is why we have created this article to guide you on how to host and install Laravel on DigitalOcean.

Pattern Refactoring
In Removing Static - There and Back Again post we tried looking at anti-patterns in legacy code from a new point of view. It can be static in your code, it can be active record pattern you needed for fast bootstrapping of your idea, it can be moving from the code in controllers to command bus. They can be coupled in your code in hundreds of classes. That's a big problem, you might think, but it's only single pattern.
News and Announcements

WordPress 5.2 Release Candidate
The first release candidate for WordPress 5.2 is now available! This is an important milestone as we progress toward the WordPress 5.2 release date.

Imagine 2019 - May 13-15th 2019, Wynn Las Vegas
Imagine 2019 attracts the biggest innovators in eCommerce. Join industry leaders, merchants, retailers, agencies and developers for live keynote and breakout sessions, customer panels and networking events. Tickets are on sale now.

Darkmira Tour PHP 2019 - 8-9th June 2019, Brazil
The unmissable event on security and quality in PHP ecosystems. Come and discover the latest developments in the PHP ecosystem, good practices, tools and methodologies during these two days with more than 30 talks where international and national speakers will share their knowledge in English and Portuguese. Tickets are on sale now.

SymfonyLive Warszawa June 11-14th 2019, Poland
Come for the conference to learn all about the latest developments with Symfony, share best practices, experience, knowledge and make new contacts with the great Symfony community from Poland! All talks will be in Polish, except for the Keynotes, which will be in English. Tickets are on sale now.

SymfonyLive - September 24-27th 2019, Berlin
SymfonyLive Berlin is already on the horizon! As every year, we'll meet from September 24th to 27th at the MOA in Berlin to bring the German Symfony community together and talk about Symfony and PHP development in general. This is going to be the biggest SymfonyLive Berlin ever, we are going from a single day of talks to two days, and from two parallel tracks to three! Early Bird Tickets are on sale and the Call for Papers is open now.

PHP Barcelona - 12-13th November 2019, Barcelona Spain
We've crafted the best PHP conference possible just for you. To allow you to see the future and get ready before nobody else. You'll gather top-notch speakers and an awesome community eager to share a lot of knowledge. All of this will take place in the very centre of the gorgeous city of Barcelona in an excellent venue. The Call for Papers is open, with Rasmus Lerdorf already confirmed, and tickets are on sale now.

Nomad PHP EU - May 16th 2019 11:00 PDT
Git Legit presented by Pauline Vos. This talk makes a case for atomic commits and how to use them while only minimally affecting your workflow. Using pre-recorded demos, you’ll learn how to properly interactively rebase, fix up, reset, bisect, and more. By the end of the talk, you’ll have seen how this Git flow will make your life easier and how it will affect your ability to cherry pick, drop unwanted commits, and most importantly: not spend hours resolving conflicts in rebase hell. A little change in habits can go a very long way!

Nomad PHP US - May 16th 2019 06:00 PDT
Write Less Complex, More Readable Code presented by Jason McCreary. “Clean Code” is code that communicates. But how do we write "clean code"? In this talk we’ll look 10 simple practices that will help you write code which communicates. We’ll see how each one reducing complexity and improves readability. We’ll also look some of the common “Code Smells” in PHP and the refactors to clean them up. Don’t worry though, we’re not just going to “talk”. All of these practices and refactors will be done with live coding demos to show you all of the little steps involved so you can start cleaning up your own code.

Podcasts and Vlogs

php[podcast] Episode 19: Frontend Fundamentals and Chris Hartjes
Eric, John, and Oscar record together again to discuss the April 2019 issue on the new frontend fundamentals, php[tek] and quite a lot more about web browsers than anyone anticipated.

Voices of the ElePHPant - Interview with Andrew Caya 
Cal Evans and Andrew Caya sit down and talk about his new book and his new project, PHP Continious Learning.

MageTalk Magento Podcast #194 - There and Back Again (w/ Slava Kravchuk)
The boys sit down with Slava Krachuk and discuss his seven-month road trip in which he circumnavigated Africa.

PHP Internals News: Episode 7: PHP and JIT
In this seventh episode of "PHP Internals News" I talk to Zeev Suraski (Twitter, Website, GitHub) about the new JIT engine for PHP 8, as well as earlier efforts to get a JIT engine into PHP.

The Laracasts Snippets Episode 95: 4 Things
This episode, I have four things to discuss with you: children and values, old PHP, developers and back pain, and finally a new UI component we're working on for Laracasts.

PHP Ugly Podcast #148: Rideout Into The Sunset
This week Eric, Thomas and John discuss various topics including the Laminas Project.

PHPLoc Lines of Code Static Analysis To Find PHP Code Smells
I show how to get the lines of code to detect code smells in a PHP application by using PHPLoc from the command line or using Docker. 

Reading and Viewing

A Week of Symfony #643 (22-28 April 2019)
This week, the upcoming Symfony 4.3 version optimised the filesystem and Redis cache when using tags and continued working on timezones and forms improvements. Meanwhile, the first edition of the SymfonyLive Tunis 2019 conference took place with great success.

Magento Security Tips to Keep Your Ecommerce Store Safe & Secure
A secure ecommerce website is a trusted ecommerce website. Trust plays an important part when you have an online store. By following this checklist, you can prevent (and to some extent, fix) Magento security issues. Here are a few Magento security tips to keep your ecommerce store safe from hackers.

Kinsta Kingpin: Interview with Adrian Spiac
Adrian Spiac is the co-founder of Cozmoslabs, a WordPress company that focuses on delivering premium WordPress plugins you can rely on. These include Profile Builder, Paid Membership Subscriptions, and their newest success: TranslatePress. Their plugins are well supported, maintained and used on over 100,000 WordPress sites around the globe.

Security Newsletter Issue 22
A weekly e-mail keeping you up-to-date with security news, with about 10 items in every issue.


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 [email protected]

Interesting Projects, Tools and Libraries

A PHP adapter for interrogating the Garmin Connect "API".
PHP library for VK API interaction, includes OAuth 2.0 authorization and API methods.

Cycle is PHP DataMapper and ORM engine designed to work in long-running PHP applications (like RoadRunner).

Solarium is a PHP Solr client library that accurately model Solr concepts.

This is a simple OneSignal wrapper library for Laravel that simplifies the basic notification flow with the defined methods.

Add theming support to your Laravel 5.* projects.

An HTTP based RAT (Remote Administration Tool) that allows you to remotely control devices from your browser.

Number to string standalone PHP library with i18n. Drivers for numbers and currency included.

Convert XSD into PHP classes and JMS serialiser definitions.

A simple, yet feature rich password manager for Nextcloud.

Tenanti allows you to manage multi-tenant data schema and migration manager for your Laravel application.

WPacked is a WordPress development starter kit with portability and immediate local development in mind.

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 ©