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!

June 22, 2017

Welcome to the latest @phpweekly news.

Not many people realise that their choice of hosting solution could determine the success or failure of their project. On the Cloudways blog, several industry leaders give their views on the benefits of managed cloud hosting.

Also this week, ever wondered what the correct definition of a full stack developer is? Let's first take a look at what they used to be, back in the day, compared to now.

We have the second part of the Dynamic Page Templates in WordPress series, looking in more specific detail at how to use them in your WordPress projects.

Plus the latest Zend Quick Bites podcast looks in further detail at the latest framework tutorial, giving some more background information about the package itself.

And finally, the next International PHP Conference has been announced for October this year, in Munich. Discounted tickets are on sale now.

Enjoy your read!

Katie and Ade

Please help us by clicking to our sponsor:

encrypt php scriptsProtect 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.


Being a Full Stack Developer
A full stack developer who can get from a prototype to full MVP (minimum viable product) is often considered a jack of all trades, master of none, and with good reason. To define the modern full stack developer, we first need to focus on what the full stack developer used to be.

Invest in Keeping Your Developers
This is the second post in my series on “Why Train Developers”. Here’s Part 1 in case you missed it. I literally wrote the book on how to hire and keep developers. (Google for it if you are interested) In the book, one of the things we discuss is how expensive the process of finding and hiring a developer can be.

Growing Community in Moldova
Drupal Moldova Association’s mission is to promote Drupal CMS and Open Source technologies in Moldova, and to grow and sustain the local community by organising Events, Camps, Schools, Drupal meetups and various Drupal and Open Source related training, and by establishing partnerships with Companies, the Government, and NGOs.

Why Industry Leaders Think Managed Cloud Hosting Is A Better Option
Not many people realise that their choice of hosting solution could determine the success or failure of their project. Even the best code base fails to perform to its maximum potential because of a hosting solution that fails to provide appropriate support. Let’s see what industry leaders have to say about the uses and benefits of managed cloud hosting.

Powerful Magento Affiliate Extension to Kick-Start Your Affiliate Marketing
Magento is one of the leading online shopping platforms used by millions of online stores. It is being widely appreciated because of its stability. As an entrepreneur, or a beginner in online marketing, affiliate marketing can prove to be an amazing sales channel as the risks involved are pretty low and the reward is high. To understand it better let’s unwind the definition of affiliate marketing, its origin, and how it works.

Clock Needs An Interface
Almost every application needs to work with time: if not for some greater purpose like expiring access credentials, entities usually store information about when they were created or generally when something happened. Telling time is indeed a crucial responsibility, and being able to rely on the mechanism across the whole codebase is really important. But it can get problematic.

Tutorials and Talks

Querying MySQL in Go
Recently I’ve been experimenting with Go, mainly due to its excellent concurrency support. Being a web developer my natural instinct was to integrate it in existing projects – connecting with MySQL was a initial choice. The following is the Go code to connect with MySQL.

Hello, Laravel? Communicating with PHP Through Phone Calls!
Twilio is a SaaS application which enables developers to build telephone applications using web technologies. In this two-part series, we will leverage Twilio to build a weather forecast app that is accessed using the telephone system. The backend will be written with the Laravel framework (an exploratory video course is available for purchase here, or in the form of written tutorials here). In this part, we will create a simple program that will allow a user to call a phone number that we buy from Twilio, enter a zipcode, and receive the current weather forecast.

How To Get Child Pages of a Page in WordPress
Sometime while working in WordPress we need to fetch all child pages of a parent page. As we know that WordPress have the concept of child and parent pages. So, here we are discussing how to to achieve this.

Exakat 0.11.8 Review
Exakat 0.11.8 has been published, as usual on Monday. This week, exakat received its very first PHP 7.2 specific analyser: PHP 7.2 supports overwriting abstract methods. It goes with all the other PHP 7.2 analysers that are ready. The Ambassador report now includes reports about framework usage, string encoding and a popularity indicator for analysis. One new analysis report classes where declarations do now follow the use trait, const, properties and methods order (give us your feedback!) or if a class may implement an interface.

Making a Docker Image Ready For Use with Swarm Secrets
Here's what I wanted to do: Run the official redis image as a service in a cluster set up with Docker Swarm. Configure a password to be used by connecting clients. See also Redis's AUTH command. The relevant command-line option when starting the redis server would be --requirepass. This is just a quick post, sharing what I've figured out while trying to accomplish all of this. I hope it's useful in case you're looking for a way to make a container image (an official one or your own) ready to be used with Docker Secrets.

The Broken Windows Theory or “Why Some Projects Are Just Destined To Suck"
Why is it that most legacy software projects are not really fun to work on? How can we stop that greenfield project to turn into one of those dull big projects? I would argue that it’s all in the foundation.

Simple Way to Add a Filter to Zend-InputFilter
Using Zend-InputFilter is remarkably easy to use. How do you add your filter to it though? This is the world's most simple filter that does absolutely nothing: We'll call it MyFilter and store it in App\Filter\MyFilter.php.

Convert Objects to Arrays and Back With zend-hydrator
APIs are all the rage these days, and a tremendous number of them are being written in PHP. When APIs were first gaining popularity, this seemed like a match made in heaven: query the database, pass the results to json_encode(), and voilà! API payload! In reverse, it's json_decode(), pass the data to the database, and done! Modern day professional PHP, however, is skewing towards usage of value objects and entities, but we're still creating APIs. How can we take these objects and create our API response payloads? How can we take incoming data and transform it into the domain objects we need? Zend Frameworks answer to that question is zend-hydrator. Hydrators can extract an associative array of data from an object, and hydrate an object from an associative array of data.

Create a Google Maps Alternative with PHP and MySQL Using The Leaflet Library
Leaflet is a JavaScript library that became popular for creating mobile friendly Web maps applications. It does not depend on Google, so you do not need to pay fees as you may need to when you use Google Maps. Read this tutorial to learn how to use Leaflet library with PHP and MySQL to create an alternative to Google Maps and implement it on your site.

Deploying Your PHP/Apache Webapp in Under a Minute with Hasura
This post is to help you deploy a webapp that you’re writing with PHP and apache.

Dynamic Page Templates in WordPress, Part 2
In part 1 of this tutorial series I introduced the basic concept of dynamic page templates and created a standard page template as a foundation for future work. A WordPress child theme based on the Twenty Seventeen parent theme was used to implement the page template. In this tutorial, you'll learn more specific details about dynamic page templates and how you can use them in your own WordPress projects. I'll also show you step by step how to extend the page template from the first tutorial and turn it into your very first working dynamic page template!

How to Make Sculpin Skip Certain Sources
Whenever I run the Sculpin generate command to generate a new version of the static website that is this blog, I notice there are a lot of useless files that get copied from the project's source/ directory to the project's output/ directory. All the files in the output/ directory will eventually get copied into a Docker image based on nginx (see also my blog series on Containerising a static website with Docker). And since I'm on a hotel wifi now, I realised that now was the time to shave off any unnecessary weight from this Docker image.

Doctrine Sharding
In the previous article we explored why sharding by tenant is a very good solution for us. In this article we dig into how to divide our Symfony app by shard.

PHP 5.6 Vs PHP 7 – Performance Benchmarks With Laravel 5
Laravel is rapidly becoming a popular choice for PHP projects. The framework has established its reputation after the release of version 5.x. In the same vein, PHP recently received a major update in the form of PHP 7.1.x. It is an established fact that Laravel has a solid codebase and provides optimized performance for all lightweight and enterprise level applications. However no statistics about Laravel 5 benchmarks and its performance with PHP 5.6 and PHP 7 are widely available.

Laravel Bootstrap Components
Bootstrap is a very popular front-end framework. A lot of developers use it to quickly create interfaces for their Laravel App, so do we at Appstract. While it makes a lot of tasks easier, it also requires a lot of HTML code to use the default components (like alerts and modals) which can make your template files look messy. Luckily, things are getting better. Laravel 5.4 adds support for components and slots, the perfect solution to use in combination with Bootstrap components. So we went at it and wrapped up most of the components in a Laravel package.

What Is Snapshot Testing, and Is It Viable in PHP?
Ah-ha moments are beautiful and rare in programming. Every so often, we’re fortunate enough to discover some trick or facet of a system that forever changes how we think of it. For me, that’s what snapshot testing is. You probably write a lot of PHP code, but today I want to talk about something I learned in JavaScript. We’ll learn about what snapshot testing is and then see how it can help us write better PHP applications.
News and Announcements

LaravelConf - June 29th-July 1st 2017, Taiwan
The first Laravel conference in Taiwan awaits you at LaravelConf Taiwan 2017 in Taipei. The conference brings Laravel developers and enthusiasts together and hosts one workshop, one case study and 12 sessions in a multi-track conference. The last few Corporate tickets are available now.

Laracon EU - 28-30th August 2017, Amsterdam
Are you a developer who has a passion for building web-applications? Do you love Laravel or are just in the process of getting started? Do you want to meet the community members that help make it all happen? Then this is the place to be. Laracon EU is a unique international Laravel event with over 600 attendees. The conference has multiple tracks and is focusing on in-depth technical talks. Come learn about the state of the industry while networking with like-minded and diversely experienced developers. Early Bird tickets are on sale now.

SymfonyLive - 17th-20th October 2017, San Francisco
We’re back! SymfonyLive is coming back, that’s right, back to our beloved San Francisco for a whole new chapter in our conference series for 2017. We are ecstatic to return to the city by the bay and host the American Symfony community. Symfony fans of The City, don’t miss the upcoming presentations, discussions, symposiums, meetups and our wonderful conference happy hour. Tickets are on sale now.

International PHP Conference - 23rd-27th October 2017, Munich
The International PHP Conference is the worlds first PHP conference and stands since more than a decade for top-notch pragmatic expertise in PHP and web technologies. Internationally renowned experts from the PHP industry meet up with PHP users and developers from large and small companies. Two days of power workshops and two conference days with over 70 international speakers and experts. Discounted tickets are on sale now.

PHP[World] Conference - November 15-16th 2017, Washington DC
Four years ago the team behind php[architect] magazine wanted to create a conference designed to bring all the PHP communities together. Hence, the idea of php[world] was born. It's an event that is intended to bring the entire world of PHP together in one place, to encourage cross-pollination of ideas and sharing of ideals. Early Bird tickets are on sale now, and the Call For Papers closes tomorrow, the 23rd, so you've just got time to submit your proposal.


Voices of the ElePHPant - Interview with Oscar Merida
In this episode, Cal talks with the publisher of php architect magazine, Mr. Oscar Merida.

Three Devs and a Maybe - Servers, Upgrades and A Little Cryptocurrency
In this weeks episode we start off by discussing Edd’s recent Server build, touching upon the hardware specifications, OS/ZFS-pool choices and monitoring configuration. We then move on to highlight the value in splitting up computational intensive tasks into queued jobs, defensive programming in JavaScript and handling querying ever increasing data-sets. Finally, we talk about keeping on-top of Software/Dependency upgrades, moving over to platforms such as AWS and Ethereum.

Changelog Podcast #253: The Serverless Revolution
We talked with Pam Selle at OSCON about the serverless revolution happening for JavaScript developers. This episode kicks off our mini-series from the Expo Hall floor at OSCON 2017.

MageTalk Magento Podcast #132 – “The Worst Episode Ever”
LIVE from Bronto Summit 2017 in Las Vegas! Certifiably the worst show we've ever recorded.

Laravel News Podcast LN40: Laracon Sessions with Laura Elizabeth
Jake and Michael are joined by designer, product maker, and Laravel community newcomer Laura Elizabeth as we get ever-closer to Laracon 2017, in addition to your regular dose of Laravel framework and community news.

Zend Framework Quick Bites Episode 26 - Create Modules and Middleware with Command-Line Tooling Support
In this episode, I’m discussing the latest tutorial: Create Modules and Middleware with Command-Line Tooling Support. As a bit of background, Zend Framework hasn't had the strongest command-line tooling and scaffolding support, in stark contrast, other frameworks. However, that's all changed! In this episode of the podcast, I give you a quick overview of what to expect in the tutorial, plus a bit more background information about the package.

PHP Ugly Podcast #60: Mothers Delays
Topics include Gmail fake docs attack and Composer CI.

Reading and Viewing

PHP Programming With MYSQL (by Don Gosselin)
This book covers the basics of PHP and MySQL along with introductions to advanced topics including object-oriented programming and how to build Web sites that incorporate authentication and security. After you complete this course, you will be able to use PHP and MySQL to build professional quality, database-driven Web sites.

Cloudways Interview - James Titcumb Talks About Last PHP South Coast and Zend Framework
Today we are honoured to have James Titcumb for this interview. He is a PHP Consultant at Roave and an Organiser of the PHP South Coast Conference. He runs the PHP Hampshire user group. Additionally, he is the project lead for the Browser Capabilities and Better Reflection project.

Learn How to Improve The Performance of Your Laravel app with Performant Laravel
Performant Laravel is a new free video course created by Chris Fidao that covers quick performance wins you can implement right now into your Laravel apps. The course includes 12 videos that range from three minutes up to twenty minutes, which makes them the perfect size for binge watching during your breaks.

Node.Js in Action (by Nathan Rajlich, published 31st May 2017)
Node.js is a JavaScript framework that can be used to create scalable, high-performance web applications. Node.js in Action, Second Edition is a thoroughly-revised new edition that starts at square one and guides readers through all the features, techniques, and concepts needed to build production-quality Node applications.

C++: Effective Modern C++ (C++ 11, C++ 14) (guide,C Programming, HTML, Javascript, Programming,all,internet, Coding, CSS, Java, PHP Vol 1) (by Paul Laurence, published 3rd June 2017)
If you are a programmer or looking to get into programming, you are probably wondering what C++11 and C++ 14 have to offer. You’re probably wondering about their major differences and ultimately what it can do to help you code more effectively. This book is here to provide that information. 


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

This is my local troubleshooting repo. It's constantly updated as I make changes and test theories for issues as well as new implementations for my Simple PHP Example project.

A very simple but effective PHP orm with automatic migrations.

A decentralised social network, written in PHP and HTML5 and based on the XMPP standard protocol.

A Laravel helper package to make almost everything for your projects.

A Drupal-based open data tool with a full suite of cataloguing, publishing and visualisation features that allows governments, nonprofits and universities to easily publish data to the public.

A full-featured content management system that allows non-technical users to manage a wide variety of content.

Handle roles and permissions in your Laravel application.

Phalcon Breadcrumbs is a powerful and flexible component for building site breadcrumbs.

VoiceWP is a WordPress plugin that integrates with Amazon Alexa to create and enable the creation of Alexa skills.

The main set of core components for the Pop PHP Framework.

Payum offers everything you need to work with payments. From simplest use cases to very advanced ones.

An open-source web IP address management application.

Please help us by clicking to our sponsor:

encrypt php scriptsProtect 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 ©