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!

August 2, 2018

Hello to the PHP community, and welcome to

To be a better developer you need to know how to prevent errors. We take a look at the top ten PHP app errors found within a database of 1000+ projects, showing the causes and subsequent preventions.

Also this week we bring you a course on creating a series of practical call-to-action WordPress plugins.

The php[podcast] team returns after a summer holiday, with a new podcast format.

Plus Early Bird tickets are currently on sale for the Central Europe PHP Conference taking place in Prague later in the year. With Rasmus Lerdorf already confirmed as a speaker, this is one you won't want to miss.

Have you written something you would love to share with the PHP community?

Read something you think our readers would enjoy?

We love hearing from you, so please drop me a line at [email protected] with your podcasts, tutorials, articles, libraries, and general recommendations.

Ade and Katie

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.


5 Signs You Should Never Have a Talk Abroad
I find PHP meetups abroad more and more valuable to my programming life. They're the best place to diverse my skills and knowledge without eating dump and self-proclaiming Twitter feeds. Wait, don't rush to your train ticket so fast to enjoy the presence of great developers, interesting topics, surprisingly open-minded people and tasty beer afterward. I'm about to tell you why you should not do it.

PHP: Never Type Hint On Arrays
Let's be controversial: In modern PHP, you should never type-hint an array. Before you start throwing tomatoes, hear me out.

9 Ways to Master Awful Code, Fast
You've been given the task of implementing a new feature on an old codebase, but the code looks awful. How can you understand it as quickly as possible? Here are several shortcuts to help learn the important parts of new code without getting lost in the irrelevant details.

Top 10 PHP Errors From 1,000+ projects (And How To Avoid Them)
To give back to our community of developers, we looked at our database of thousands of projects and found the top 10 errors in PHP apps. We’re going to show you what causes them and how to prevent them. Avoiding these "gotchas" will make you a better developer.

Tutorials and Talks

Quickly Find All Links on a Web Page
The following PHP script will quickly find all the links on a web page, removing any duplicates and also giving the total count for any duplicate links found.

What Performance Tricks Actually Work
We’ve all been there before. You submit a pull request and moments later you get a comment like: “Hey you should use a native function here, they are so much faster” or “You can declare this final, that way we save some processing power”. It’s great that we as developers keep an eye on this, but how true are these things. And are they still a thing in newer PHP versions? Time to put some of these “good practices” to the test. I’ve selected 10 speed tricks that I’ve picked up over the years and we’re going to check how relevant they still are in PHP7.2.

Mocking External APIs With Laravel and VCR
Development of multi-service applications is a complex task. Outside of the potential technical difficulties and inherent complexity of wiring up multiple isolated and discrete applications to communicate in production and staging, you also have to replicate that setup in your development environment (we use Lando for that!) and find a way to handle these dependencies in your testing environment as well.

How to Create Outstanding Long-Form Articles in WordPress
People form their first impression of you – and potentially your business – in less than one second. Scary. Thankfully, online articles have a little more wriggle room. Most web pages have just under one minute to make their case for visitors to either stay or bounce.

Versions Impact on PHP Code Bases
With the upcoming PHP 7.3, the question of the next migration is back on our tables. We’ll hear a strange mix of begging to move to the new versions for features and security, mixed with a constant threatening that some old versions will soon be unmaintained or worse. Indeed, there is versions impact on PHP code bases. To observe the way Open Source projects handle the evolution of PHP, we have audited 1977 Open source PHP projects, by linting them with PHP versions from 5.5 to 7.3. This taught us the impact of PHP on code, over a long period of coding. Let’s review them.

Atlas ORM Integration with Symfony
Are you using Symfony 4? Do you want to use Atlas with it? We now have a Symfony bundle and Flex recipe that makes installation and integration a breeze. Two commands and one .env file edit, and you’re ready to go.

Hidden Gems of PHP Packages: Nette\Utils
In this series, I will show you not-so-known PHP packages that I happily use in my daily workflow. They're hard to describe in a few words for their various features, but awesome and simple to use. Today we start with Nette\Utils package.

204 No Content
204 No Content should be returned by a server when a request was successful, but there was no response body.

Amelia: The Next-level WordPress Booking Plugin
Booking appointments would seem to be a minor task, but managing appointments takes up more time, energy and money than you might imagine, especially in very active businesses like consulting firms, health and fitness clubs and beauty salons. Introducing Amelia, the automated booking specialist.

How to Create Custom CLI Commands Using the Symfony Console Component
In this article, we're going to explore how you could create custom command-line interface (CLI) commands in your PHP applications using the Symfony Console component. After installing the necessary libraries, we'll create a handful of examples to demonstrate the concepts of the Console component.
News and Announcements

Quick Hitter: Analyze PHP Framework on Twitter
I’ve created a Twitter account for the Analyze PHP Framework. Follow the account for progress updates and various other news. @AnalyzePHP

PHP Developer Days - September 21st-22nd 2018, Dresden
After a very successful edition in 2017 we aim to push this community driven conference to the next level in 2018. For the first time we will offer a full day with workshops, so you can get the most out of our excellent trainers. On the second day our international speakers will provide you with great sessions in a single track. We are committed to creating a unique community experience - an event where everyone is among #PHPriends. Tickets are on sale now.

Laracon AU - October 18-19th 2018, Sydney
Two days of learning and networking with the Laravel community in Australia for the first time. The two day conference will see us welcome some of the most prominent Laravel community members including Matt Stauffer, Adam Wathan, and the framework’s author Taylor Otwell as speakers alongside a host of terrific local speaking talent. Early Bird Tickets are on sale now.

PHP Central Europe - October 26-28th 2018, Prague
New season and new challenges! As conference organisers we understand perfectly that you can stay with peleton only when you focus on development. That is why phpCE, as an event aimed at a wide group of PHP programmers from Central Europe, leaves Poland for the first time. We are stronger than before thanks to the organisers of Brno PHP Conference and volunteers from the Pehapkaƙi group. Together we have been working for the success of this year’s edition and we are inviting you to Prague. With Rasmus Lerdorf already confirmed as a special guest, Early Bird Tickets are on sale now.

Symfony Con - December 4-8th 2018, Lisbon
Symfony is proud to organise the sixth edition of the SymfonyCon, the international Symfony conference. This year, to celebrate Symfony, we decided to bring the entire community to Portugal and discover the amazing city of Lisbon. If you like Symfony and share fun with professionals, this is where you want to be in December! Join us for talks, workshops, discussions and other serious work around Symfony and its environment. Tickets are on sale now.


PHP Round Table Podcast 76: Concurrency, Generators & Coroutines - Oh My!
PHP has had support for coroutines since PHP 5.5 and it allows you to do some really cool non-blocking stuff. We chat about concurrency in PHP and how we might be able to use it to speed up our apps.

PHP Ugly Podcast #114: 3D Printed Puns
This month the team discusses Customer Reviews - PHPUgly on Apple Podcasts.

php[podcast] Episode 11: In this Episode
After a summer holiday, Eric van Johnson and John Congdon return with a new format. Share your thoughts on the topics covered and leave a comment below.

PHP Web Development Podcast Ep #9 - Advice for Junior & Middleweight Developers Part 2
Continuing from last 2 weeks, we will be discussing the importance of learning and how learning can help you progress  quickly as a developer. We will be discussing some of the factors that have contributed to Clem’s journey from an intern to a Tech Lead.

Laravel News Podcast LN66: Query packages, Laracon US 2018, and Laravel Nova
Jake and Michael discuss all the latest Laravel releases, tutorials, and happenings in the community.

Reading and Viewing

Introducing Laravel Nova: A Tool for Building Admin Panels and Custom CMSes
These are my notes that I took during the announcement on 2018-07-25. I hope to go back later and update this after a more careful re-watching of the YouTube recording that's now up, so I could get some of my code samples more exact and catch anything I missed.

[Survey] Which One Do You Prefer: Magento 1 OR Magento 2
Magento 1 changed the way developers and store owners see ecommerce platforms. It had a good run, but now since it is reaching its End of Life (EOL), all stakeholders must now think of shifting to Magento 2 sooner or later. We did a survey to find out the opinion of most Magento developers about the differences in both the versions and what should beginners use for starting Magento development. We surveyed more than 50 developers, designers, and project managers about the compatibility, design, and migration issues. And, here is a summary of it all.

3 Practical Projects to Learn to Code WordPress Plugins
Part of the reason for the popularity of WordPress is how customisable it is. With the right themes and plugins, you can make WordPress do just about anything you need it to. In this course, Rachel McCollin will guide you through creating a series of practical call-to-action WordPress plugins.

Laravel by the Numbers
A unique analysis of data from Laravel Shift on over 8,000 Laravel apps.

Running Tighten's Jigsaw on Netlify
A lot of people have been talking about using Netlify recently, so I thought I'd see what all the fuss is about. How simple is the whole process? I set a ten minute time limit on myself to get from 0 lines of code, to deploying a TLS-enabled, CDN-hosted site on Netlify. Watch the whole thing in realtime below - including running NPM and Composer installs.

Why is Your Company Losing Money by not Open Sourcing: 1. Hiring
Do you want to hire developers? Do you want to hire those developers who help your company in the long term? Do you want to save money for random picks of HR agencies? Do you want to hire developers who already know your code before even meeting you? Do you want to attract developers in the long term with zero investment? Go Open-source!


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

PMG/queue is a production ready queue framework that powers many internal projects at PMG.

i-MSCP (internet Multi Server Control Panel) is a software (OSS) easing shared hosting environments management on Linux servers.

Fully functional Open Source email marketing manager for creating, sending, integrating, and analysing email campaigns and newsletters

Laravel Plans is a package for SaaS apps that need management over plans, features, subscriptions, events for plans or limited, countable features.

PHP GUS API is an object-oriented library to get information from REGON site based on official REGON SOAP API.

A very slight framework based on PHP7.2+ for universal API controlling.

Kaltura is the world's first Open Source Online Video Platform, transforming the way people work, learn, and entertain using online video.

Someline Starter is a PHP framework for quick building Web Apps and Restful APIs, with modern PHP design pattern foundation.

This library is a helper for amazon echo (alexa) skills with php. With this library it's very simple to handle alexa requests in your php application. You only create some handlers for the requests of your alexa skill and add them to a registry.

MsgPHP is a project that aims to provide (common) message based domain layers for your application. It has a low development time overhead and avoids being overly opinionated.

Bulk Delete is a WordPress Plugin that allows you to delete posts, pages and users in bulk based on different conditions and filters.

PHP Censor is an open source self-hosted continuous integration server for PHP projects.

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 ©