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 17, 2015

Hello to the PHP community, and welcome to

Continuing the Beginners Guide to WooCommerce series, this weeks article looks at adding an External/Affiliate product. 

The Three Devs and a Maybe Podcast team are back, talking about ReactJS, Flux and Screencasting.

Also this week, if you are looking to hire a PHP master, we have a guide to hiring the best.

Plus the North American SymfonyLive Conference is taking place in San Francisco this year, October 29-30th. Tickets are onsale now.

Finally, the September issue of php[architect] is out now, taking a serious look at Security issues.

We welcome all feedback, so please feel free to get in touch on [email protected].

Katie and Ade

We love our sponsors. Why not try them?


 From our sponsors:

Try JIRA for Free Today > For $10/month, enable collaboration across your team with the most flexible tool out there. Trusted by 30,000 companies of every size and industry. Get Started >

(ads by  


How to Hire a PHP Developer
PHP is used in more than 80 percent of all web projects as a server side language. Although many “experts” keep saying that it will die soon, it is still standing strong as one of the most important web languages there is. And with the PHP 7 coming out soon, the prevalence of this language will only increase.

Magento 2 Vs 1.9: Whats New For Merchants And Developers
Impeccable as it has been, Magento has an update to catch with a whole new package of features and upgrades in the fourth quarter of 2015. The developer community seems to be thrilled with the news, but the merchants and retailers are the ones curious with what it will bring next to their business.

Help us test DrupalCI
DrupalCI is the next generation testing infrastructure for Drupal. At this time, DrupalCI is running parallel with the existing PIFT/PIFR testing architecture. Before we retire the old testing infrastructure we want to ensure that there are no feature regressions in the new DrupalCI system, and that core and contrib developers have had time to learn the new testing architecture and try it out thoroughly. If you are a maintainer of a contrib module with testing enabled, we will enable DrupalCI testing for your project. Learn more about how to use DrupalCI for automated testing of your project on

What Polly Really Wants
In web development, a polyfill (or polyfiller) is downloadable code which provides facilities that are not built into a web browser. This definition shows the origin of the word to be specifically Javascript and client side development. Slowly but surely, this has become part of the PHP vernacular, everyone has heard of password_compat. A polyfill for PHP7's random_* API is also available.

Tutorials and Talks

Writing PHP Git Hooks with Static Review
Git hooks are scripts which run, based on certain events in the Git lifecycle, both on the client and on the server. There are hooks for pre- and post-commit, pre- and post-update, pre-push, pre-rebase, and so on. The sample hooks are written in Bash, one of the Linux shell languages. But they can be written in almost any language you’re comfortable or proficient with.

How To Add Multilingual Support to Eloquent
Did you know that several countries throughout the world have more than one official language? Laravel’s Eloquent ORM is a very powerful part of Laravel. Unfortunately, it doesn’t provide support for multilingual models out of the box. Adding that functionality yourself isn’t that difficult.

Calculating Periodical Events in PHP Part 1: The Problem Challenges
Sometimes it is necessary to calculate the days of periodical events, like for instance sweepstakes, contests, regular publications, etc.. In general, it is an easy problem to solve. However, when the events span multiple days and must not occur in holidays, the problem becomes less trivial to solve. Read this article to learn how you can use the PHP Sweepstakes class to compute the days of regular event taking, on account of these nuances that may complicate the calculations.

The Beginners Guide to WooCommerce: Adding an External/Affiliate Product
In the previous article we added a grouped product as a parent of a simple product, and then linked the child with its parent. Today I plan to walk you through the process of adding an External/Affiliate product, which is the third type in the Product Data drop-down. So, let's get down to it.

Logging with Monolog: From Devtools to Slack
Logging is an important part of the app development/maintenance cycle. It’s not just about the data you log, but also about how you do it. In this article, we are going to explore the Monolog package and see how it can help us take advantage of our logs.

Find Prime Numbers Between 1 and 100 in PHP
This blog describes how to find prime numbers between 1 and 100 using PHP. A prime number is a number which is only divided by 1 and itself.  Consider the number 5. It is a prime number because it can only be divided by 1 and 5.

Rendering Riot.js tags in Twig using Node.js
Twig is everywhere. eZ Platform, Bolt, Drupal 8 and other popular projects have adopted it. At the same time Node.js and Web Components have risen to popularity. This article discusses merging the popular PHP templating engine Twig to Riot.js, a lightweight React-like user interface library using Node.js for server side rendering.

A New Type of PHP Part 1 - Return Types
Every significant release of PHP adds a number of new features, with one or two that really define the release. For PHP 5.3, it was namespaces and anonymous functions. For PHP 5.4, it was traits. For PHP 5.5, generators. For PHP 5.6, variadics. While PHP 7 has a large array of new improvements to make developers' lives easier, and involve less hair loss, I believe that long term the improvements as to how PHP handles variable typing will be the defining feature of this release. It’s not a single change, but actually a combination of a few closely-related changes, that will change the way we write PHP, and for the better.

Understanding Symfony2 Forms
To actually use Symfony2 forms, all you need to do is read some documentation, a few blog posts and you’ll be up and running in a couple of minutes. Understanding Symfony2 forms, however, is a whole different ballgame. In order to understand a seemingly simple process of “adding fields to a form”, we must understand a lot of the basic foundation of the Symfony2 Form component. In these blog posts, I’ll try and give some more insights on this foundation.

Improving Your PHP Code Performance Part 1: Profiling and Detecting Slow Code
Sometimes we have to deal with PHP code that takes longer to run than it should. When that happens we tend to keep trying to figure out the causes, and take every opportunity to improve the code. Sometimes it is not enough to clean up or refactor the code. Read this article to learn techniques to detect what PHP code is causing your application to run so slow.
News and Announcements

Joomla! 3.4.4 Released
Joomla! 3.4.4 is now available. This is a security release for the 3.x series of Joomla This release fixes a low level security issue. We strongly encourage you update your sites.

WordPress 4.3.1 Security and Maintenance Release
WordPress 4.3.1 is now available. This is a security release for all previous versions and we strongly encourage you to update your sites immediately. This release addresses three issues, including two cross-site scripting vulnerabilities and a potential privilege escalation.

Symfony Live San Francisco - October 29-30th 2015
SensioLabs’ North American SymfonyLive conference will be held in San Francisco on October 29th-30th. We are super excited to be back in San Francisco for the SymfonyLive conference and even more excited as Symfony turns 10! Join us for all the best Symfony presentations, discussions, symposiums, meetups and the after-conf cocktail party. Tickets are onsale now.

php[world] - November 16-20th 2015, Washington DC
Once again, we will be inviting all the varied sub-communities of PHP to join us under one roof; WordPress, Drupal, Joomla!, Magento, Zend Framework, Symfony, CakePHP, Laravel and more!  We will be planning specific tracks for each framework, as well as finding great crossover talks that will appeal to everyone. Tickets are onsale now.

ZendCon - October 19th-22nd 2015, Las Vegas
Now in its 11th year, ZendCon is the "must attend" event and the largest gathering of the PHP community. ZendCon brings together industry thought leaders, recognised PHP experts, enterprise decision-makers, IT managers, dev and ops teams, and independent developers for four days of professional and business development. Tickets are onsale now.

DrupalCon - September 21st-25th 2015, Barcelona
DrupalCon brings together thousands of people from across the globe who use, develop, design and support the Drupal platform. It is an action-packed week of all things Drupal and features a full schedule of educational, networking and contribution opportunities. The last few tickets are onsale now.

OSCON - October 26-28th 2015, Amsterdam
OSCON in Amsterdam celebrates, defines and demonstrates the best that open source has to offer. From small businesses to the enterprise, open source is the first choice for engineers around the world. Te last few tickets are onsale now.


Voices of the ElePHPant - Interview with Seth Thornberry
This week Cal Evans talks to Seth Thornberry, of the Dallas PHP User Group.

MageTalk Magento Podcast #59 - Various Meaty Eye
Kalen learns to count properly and the guys get into details on Magento/partner overlap.

Lately in PHP Podcast Episode 63 - PHP 7.1 Features PCO for Cryptography like PDO is for Database
A recent proposal for PHP 7.1 aims to create a new extension named PCO (PHP Cryptography Objects) for data encryption, decryption, signing, etc.. It will be like what PDO (PHP Database Objects) is for database access. The discussion about the PCO extension was one of the main topics discussed by Manuel Lemos and Arturs Sosins, in Episode 63 of the Lately in PHP podcast.

Three Devs and a Maybe Podcast - ReactJS, Flux and Screencasting
This week we start off the discussion with the topic of CSRF and Session hijacking. We then move on to the recently released screencasts we did with Joe Watkins, and how interesting Edd found recording them. Following this we discuss ReactJS, the Flux architecture, handling error-logging on the front-end and the JavaScript source-maps. We wrap up the show with the emphasis of removing jQuery, how hard following a single source of truth is and 'dangerous' design patterns.

Acquia Podcast: Idealism and What Successful Open Source Looks Like
This week’s podcast: Jeffrey A. "jam" McGuire’s virtual, mini-keynote at Drupal Camp Cape Town 2015. This is a short talk that includes ideas from the “Idealism as Code” presentations that jam has given at a few events in recent months. Watch the video to see the slides jam refers to.

Free The Geek Podcast: Episode 5 - Building Your Brand as a Freelancer - with Gary Hockin (Part One)
In this episode, I have, part one of, a fireside chat with, Zend Framework aficionado and Roave stalwart, Gary Hockin about the ins and outs of building both a brand and a reputation as a freelancer. We talk about a range of tools freelancers, as well as full time employees, can use, including social media, speaking at conferences, and getting on podcasts, to build a reputation and brand for themselves, even if they're just starting out. So join us for this and, as always, much, much more.

Full Stack Radio Podcast Episode 25: Matt Machuga - Tips and Tricks to Make Your Code Awesome
In this episode, Adam talks to recurring guest Matt Machuga about tips and tricks that lead to better code. They talk about bringing functional programming concepts to OO, simple patterns for cleaning up typical MVC web app code, and about how imposing crazy rules like banning conditionals and loops can lead to creative solutions that change the way you think about solving problems. They also get a little too excited about anonymous functions and compositional chains. This episode is brought to you by Laracasts.

Reading and Viewing

PHP Annotated Monthly – September 2015
As the autumn conference season begins to ramp up, it’s time for the September edition of PHP Annotated Monthly – bringing you all the news, tips, tricks and tutorials from the PHP community.

jQuery Tutorial: How to Build a jQuery Accordion
Learn how to build a jQuery accordion - how to slideUp() and slideDown() different elements, how to use relative selectors to target elements in jQuery and how to use the click event to trigger functionality on click.

Advanced GIT for Developers - Lorna Jane Mitchell - Laracon EU 2015
Boost your git skills in this session, where we pick out some of the neatest tricks you can do with this excellent and powerful tool. If you're confident committing, branching and merging, then come along and collect the next set of skills, to include bisect, rebasing, the rerere command, and some tricks for handling multiple remotes. 

Learning Phalcon PHP Paperback (by Calin Rada, published 26 Aug 2015)
If you are a web developer and want to build effective web applications with Phalcon PHP, then this book is ideal for you. Compile and install Phalcon from source code, set up an MVC project and learn how to use the Dependency Injection (DI), configuration, and routing.

php[architect] September 2015 Issue: Security Boot Camp
In this issue, we have an overview of the various techniques that malicious users can use to attack your application, a deep dive into how passwords can be stored securely and how PHP’s built in password functions make this easier, a look at how to setup a PHP based Intrusion Detection System, and how to use PDO to guard against SQL injection attacks. Elsewhere, there’s a look at how to think like a functional programmer, an introduction to using Sculpin for generating a static site, an interview with Elizabeth Naramore, and more.


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

PHP wrapper for Drafter API Blueprint Parser v0.1.9.

IP, referer, user ID and more in Laravel logs.

Zephir - Ze(nd Engine) Ph(p) I(nt)r(mediate) - is a high level language that eases the creation and maintainability of extensions for PHP.

A PHP package to create HTML tables from a data store that can be sorted and paginated.

A PHP library for communicating with the Twilio REST API and generating TwiML.

A PHP library for creating content from a directory of structural PHP files usually containing boilerplate html.

A lightweight SQLite Blog-Engine.

PHPCan is an opensource PHP5 framework created to the development of any kind of website in an easy way.

phpBB is a popular open-source bulletin board written in PHP.

Create a Phar (PHp ARchive) file of your Composer based PHP application.

Collection of development libraries to speed PHP development.

A high-performance project management system in PHP.

A lightweight data mapper designed to take advantage of PHP 5.3+.

Thruway is an open source client and router implementation of WAMP (Web Application Messaging Protocol), for PHP. 

Easily manage forms with PHP, for WP or stand-alone applications.

Ajde is a web framework to kickstart your PHP projects.

Phalcon is a web framework delivered as a C extension providing high performance and lower resource consumption.
Please help us by clicking to our sponsor:

 From our sponsors:
Try JIRA for Free Today > For $10/month, enable collaboration across your team with the most flexible tool out there. Trusted by 30,000 companies of every size and industry. Get Started >

(ads by  

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 

Protect your PHP code with SourceGuardian 10. Free trial.


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 ©