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!

September 27, 2018

Hi there PHP fans.

Are you are looking to recruit new staff?
Looking for a high standard of applicant?
Would you like to reach out to the PHP Community to fill your position? 
Where better to advertise your job openings then on 

Do you want to entice new talent, or new business, to your business?
How about sponsoring an edition of
A stand out advert at the top of our page will catch the eyes of our subscribers.

With our subscriber list nudging 17,000, you could just find exactly who, or what, you are looking for right here.

For more information drop me a line at [email protected].

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 Advices I Would Love to Get Before Starting to Maintain an Open Source
I wasn't always confident while making public every single line of PHP code I write. I had to take many blind paths, spend a night full of stress coding in unknown waters and make a lot of over-complicated code that backfired to me months later.  They say "experience cannot be passed and it must be experienced" and I agree with that, but still there are some shortcuts that would speed-up my path to joyful open-source coding I have today. Here are 5 of them.

The Definitive Guide to Your Next PHP Framework - Part 3
By now, if you already came across the first two parts of this article, you should master the art of working with PHP frameworks. Working without stress and coding only what you want rather than what you need to. Digital Advertising Update
The Drupal Association is 4 years into our initiative to diversify revenue streams to make the Association more sustainable and less reliant on DrupalCon to fund all of our programs. Monetisation on itself is an important revenue stream that helps fund various initiatives and improvements.

Tutorials and Talks

PHP Test Driven Development Part 4: Enter The Mock
Hey there, welcome to Part 4! Today we’ll learn how to mock. Mocking is a process where you create a fake instance of a real class, and test against it. This is so that, you do not have to worry about the real functionality of external dependencies inside a class. This makes unit testing a lot easier and reliable.

How to Mix Security and Form with Symfony
In some applications, it could be required to disable some form fields depending on user’s roles. In this article, we will see how to implement this feature thanks to a simple example: a blog engine.

How to Send SMS Reminders from PHP Symfony Applications
If you have a booking system, making appointments such as massage or other therapist bookings, dental or medical appointments, etc., you’d probably like to remind the client about the booking they made on the day of the appointment. In some cases, you might also want to remind the person offering the service. In this tutorial, you'll learn how to send SMS reminders to clients of their upcoming massage appointments, at a designated time before the appointment, in a Symfony project using Twilio's SMS service.

Introducing Symfony Panther: a Browser Testing and Web Scrapping Library for PHP
Since the very first version of Symfony 2, the framework provides a suite of convenient tools to create functional tests. They use the BrowserKit and DomCrawler components to simulate a web browser with a developer-friendly API.

Get Started With Pusher: Client Events
In this series, we've been learning about Channels from Pusher, a platform that allows you to give your users the seamless real-time experience they want. Throughout this series, we have looked strictly at server events—events that originate on the server—but we also have the ability to trigger events from the client. These are called client events, and they provide a different service than server events because some actions may not need validation or persistence.

Make a POST Request from PHP With Guzzle
If you make server-side requests to external APIs using PHP, then check this out. It isn't a new thing with PHP, and this post targets newer versions of PHP.

Assertions and Assertion Libraries
When you're looking at a function (an actual function or a method), you can usually identify several blocks of code in there. There are pre-conditions, there's the function body, and there may be post-conditions. The pre-conditions are there to verify that the function can safely proceed to do its real job. Post-conditions may be there to verify that you're going to give something back to the caller that will make sense to them.

5 Ways To Loop Through An Array In PHP
PHP, just like most other programming languages has multiple ways to loop through arrays. The most popular ways to do it usually is with a while, for and for each operator, but, believe it or not, there more ways to do it with PHP. In this article I will walk-through each possibility for reading arrays whilst looping.

In this post, we'll talk about what APP_KEY does and doesn't do, some common misconceptions about its relationship to user password hashing, and the simple steps to changing your APP_KEY safely without losing access to your data.

Laravel View Models
View models are an abstraction to simplify controller and model code. In essence, view models are simple classes that take some data, and transform it into something usable for the view. In this post I'll show you the basic principles of the pattern, we'll take a look at how they integrate in Laravel projects, and finally I'll show you how we use the pattern in one of Spatie's, our company, projects.

Create a Simple MVC Codeigniter CRUD Application
Codeigniter is popular choice for projects that require database integration and interfacing. The main reason is the simple within-the-framework options for setting up and working with database connections. This means that Codeigniter is a great option for MVC CRUD applications. Before going into the details of this Codeigniter CRUD application, I will describe the basics of Create, Read, Update and Delete.

Verifying Laravel Version Compatibility
I’ve been working with Honeybadger to build a new set of PHP integrations. I would like to write more about that soon, however, I feel like I’ve stumbled across something that could be useful to others. I wanted to share it as soon as I could.

Exakat 1.4.5 Review
Exakat 1.4.5 brings two new reports, and a new analyzer. It also packs a lot of incremental updates. The reports are work-in-progress : the Manual report, which documents your code; and the Weekly report, which brings the community together to hunt for bugs.

Set Up Caching in PHP With the Symfony Cache Component
Today, I'll show you the Symfony Cache component, an easy way to add caching to your PHP applications. This helps improve the overall performance of your application by reducing the page load time.
News and Announcements

ZendCon - 15-17th October 2018, Las Vegas
ZendCon & OpenEnterprise is the premier technology conference designed to teach and share practical experiences from the front lines of enterprise PHP and open source environments. Focused on solving real-world, enterprise-class problems, technical business leaders, strategists, and developers will assemble to discuss case studies and best practices around the application of PHP and open source to transform business. 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. 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, tickets are on sale now.

php[world] - November 14-15th 2018, Washington DC
PHP as a language and a community has been rapidly changing in the last few years. A staggering 83% of the Web runs on PHP, and those websites are built on frameworks such as Drupal, WordPress, Magento, Symfony, ZF and Laravel, each of which has their own strong community. We created a conference designed to appeal to all these communities and bring them together. Hence, php[world] was born. Tickets are on sale now.

PHP UK Conference - February 20th-22nd 2019, London
We are pleased to announce the 14th Annual PHP UK Conference. An optional workshop day followed by two days of amazing talks, plentiful networking opportunities and great socials. With over 600 delegates, speakers, and sponsors, PHP UK conference aims to deliver fantastic up-to-date content about PHP and related web technologies in a comfortable and professional setting. There are countless networking opportunities to engage with international speakers and delegates, making the event one you won't want to miss. The Call for Papers is open, and Early Bird Tickets are on sale now.


MageTalk Magento Podcast #178 – “Phil-a-Buster”
"We really do need to get to a place where the Magento community assumes the best until it sees the worst." - Matt Asay. In this episode Kalen and Phillip unpack the changes to the bug bounty program and the community reaction to it. Listen now! 

The Five-Minute Geek Show Podcast: Episode 104 - How We Set Our Prices
How Tighten sets our prices.

PHP Ugly Podcast #121: You Know Nothing John Congdon
This month the team discusses Safe PHP: throwing exceptions instead of returning false.

PHP Web Development Podcast Ep #15 - What Is A Senior Developer?
This month we will be running a new session with Dan Blows, currently  Head of Engineering and has held positions such as Senior Developer as well as a Tech Lead. In this first session we will discuss his view on what defines a Senior Developer, some of the attributes, characteristics and skills.

Laravel News Podcast LN70: Docker, Git GUIs and Health Panels
Jake and Michael discuss all the latest Laravel releases, tutorials and happenings in the community.

Three Devs and a Maybe Podcast - Bridging the Security Gap with Scott Arciszewski
Discussion on CVEs, Security Reconnaissance, Quantum Computing and Securely Managing Secrets.

Reading and Viewing

Announcing Docker for PHP Developers Video Course
Since the release of his book in January, Laravel News writer Paul Redmond, has been working on a Docker for PHP Developers video course, a hands-on, tutorial style book + videos on using Docker and PHP in development. Today, the Docker for PHP Developers video course is available for purchase!

A Week of Symfony #611 (17-23 September 2018)
This week Symfony introduced SymfonyCasts, the best place to learn about Symfony, PHP and JavaScript. Meanwhile, the Validator component was decoupled from the Translator, and the lint commands were improved to support multiples files and directories. Lastly, the SymfonyLive London 2018 conference will take place next week.

Community-Driven PHP 8 Wish List
It's been over two months since I started a research on Twitter about the things that developers would like to be added or improved in the next major PHP release. It had a surprisingly long reach, inspiring developers, prominent experts, community representatives to express their opinion through more than a hundred responses.  I created a spreadsheet containing a list of proposals and their number of votes.

Students of THM Gießen support Joomla - 10 Years of Web Programming Weeks
THM Gießen has been organising "Web Programming Weeks" for 10 years. On the occasion of this year's anniversary, the Faculty of Mathematics, Natural Sciences and Computer Science (MNI) once again offered the opportunity to work intensively with the Joomla CMS. This year's focus was on the upcoming Joomla 4 version. A two-day preparation event was offered for newcomers to PHP and Joomla so that they could work effectively at the start of the Programming Weeks.


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

JsonQ is a simple, elegant PHP package to Query over any type of JSON Data. It'll make your life easier by giving the flavour of an ORM-like query on your JSON.

A reflection API that aims to improve and provide more features than PHP's built-in reflection API.

Simple library writen in PHP without framework dependancy for database version control. Supports Sqlite, MySql, Sql Server and Postgres.

A simple package to insert and load userstamps for a model automatically, it provides an eloquent trait to use in models.

DOMjudge is a system for running a programming contest, like the ACM ICPC regional and world championship programming contests.

A scalable web framework and content management system with the goal to please developers, clients and users alike.

A lisp-like language for PHP.

With spatie/opening-hours you create an object that describes a business' opening hours, which you can query for open or closed on days or specific dates, or use to present the times per day.

Slevomat Coding Standard for PHP_CodeSniffer complements Consistence Coding Standard by providing sniffs with additional checks.

PropertyInfo extracts information about PHP class' properties using metadata of popular sources.

Exports all items on an Instagram profile to JSON using Instagram-API.

Minimalistic library that helps your IDE to understand a structure of associative arrays in your PHP 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 ©