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!

July 30, 2015

Welcome to this weeks packed edition of ;)

PHP 7.0.0 Beta 2 has been released, the fourth pre-release of the new PHP 7 major series.

Plus there are two releases from WordPress - 4.2.3 Security and Maintenance, and 4.3 Beta 4.

With the Symfony Demo application introduced a couple of months ago, we have an article recapping the most important new features added to showcase Symfony functionalities.

Also this week, we have the 2nd part of the 'Create a Custom Payment Method Module in Magento' series, looking at listing the custom payment method in the front-end checkout process.

Lorna Mitchell brings us a quick howto on getting started with PHP 7.

And finally, the Three Devs podcast team is joined by another podcaster - Steven Proctor, host of Functional Geekery.

Thanks for joining us,

Katie and Ade

We love our sponsors. Why not try them?


 From our sponsors:

Group Chat & IM for Teams Communicate with co-workers in real time. Used by Netflix, Dropbox & Salesforce. $0/unlimited users. Get started >>
(Sponsor this newsletter


Introduction to PHP Security – Part 2
In Part 1 of this series, we were introduced to some of the fundamental security flaws that may afflict your PHP applications. In Part 2, let’s dive a bit deeper into some of the most advanced security flaws that may afflict your environment. Truth be told, there are potentially an infinite number of ways in which a software product can be compromised and have its security breached.

PHP is Java, Hack is Scala
Java Virtual Machine as a platform seems to have gone through a renaissance, not exactly the same as PHP, but similar. Somehow languages ranging from Scala to Clojure to Ruby are raising the JVM fever. And this all makes sense.

The Symfony Demo Application, Three Months Later
The Symfony Demo application was publicly introduced three months ago. In addition to being a learning resource, it's considered the reference implementation of the Symfony Best Practices. During the past weeks new features have been added to showcase Symfony functionalities. This article is a quick recap of the most important new features.

Defensive Programming in PHP
Defensive programming, simply put, is programming with the intent to anticipate likely failure points. The goal is to circumvent those likely problems before they occur. You see the problem, right? There’s something inherently difficult with the advice “expect the unexpected” and it’s made many times worse when one alters it to “expect the unexpected and try to prevent it”.

Tutorials and Talks

Console Wars - PHP CLI Libraries
On the SitePoint blog this week, this article briefly compares three PHP console command libraries: The Symfony console component (symfony/Console), The Hoa console (hoa/console) and The Webmozart console (webmozart/console).

Build a Custom WordPress User Flow - Part 3: Password Reset
In the first two tutorials in this series, we have built custom pages for logging in and registering a new user. Now, there is only one part in the login flow left to explore and replace: what happens if a user forgets his or her password and wants to reset it. In this tutorial, we will tackle that last step and complete the Personalise Login plugin we've been building throughout the series. 

Cron Expression Parser in PHP
Working with cron scheduling can many times be a frustrating affair. Although setting a few cron jobs at one time can be easy, calculating cron dates in the future in code can get time consuming quickly. The PHP cron expression parser described here can parse a CRON expression, determine if it is due to run, calculate the next run date of the expression or calculate the previous run date of the expression.

Transposition in PHP
Ever had data in the form of rows and columns, where you wanted it as columns and rows? Sometimes you have all the data you need, but it is in the wrong format.

How to Render 3D Surfaces in PHP Using 2D Contour Plots
Contour plots are graphics that render lines, that connect points in a geographic region, that have the same value, for instance points in a terrain with the same altitude. They are useful for instance to represent 3D features of a terrain in a 2D image. Read this article to learn more about contour plots and how to render them using the PHP Contour Plot package.

Speeding Up Database Calls with PDO and Iterators
When you review lots of code, you often wonder why things were written the way they were. On the DragonBe blog this week is an article looking at making expensive calls to a database, and how things could and should be improved.

Validating Your Data with Respect Validation
Validation is an important aspect of every application’s interaction with data. Instead of reinventing the wheel every time, the community collaborated on some useful packages like Symfony, Laravel, Zend, etc. In this article, we’re going to introduce a lesser known package called Respect Validation, which provides some nice new features.

Create a Custom Payment Method Module in Magento: Part Two
In this series, we're working on how to create a custom payment method extension in Magento. In the first part, we created a basic back­-end configuration for our custom payment method. We created a basic module, and we'll extend it in this article. Today, we'll see how to list our custom payment method in the front­-end checkout process and save custom fields related to our custom payment method along with other order information.

Composer Cache on Travis
Ever since his "Test lowest, current, and highest possible on Travis" post, Cees-Jan Kiewiet wanted to dive into caching composers cache and vendor on Travis.

Test Your PHP Application on PHP 7
PHP 7 is coming, which is nice, but what does it mean for the majority of PHP developers? PHP as a community is notoriously slow in adoption, some of us are still waiting for 2012's new shiny to be available as standard on our hosting platforms. However, with the performance benefits and a few really nice new features, PHP 7 is well worth everyone's attention, and it's actually quite easy to get started. Here's a quick howto from Lorna Mitchell.

Understand Overriding in Magento: Models
In this series, we're exploring overriding features available in the Magento eCommerce system. In the previous article, we discussed how to override core block files using a custom module. Today, I'll extend it and demonstrate how you can override core model files using an XML-based configuration file.
News and Announcements

PHP 7.0.0 Beta 2 Released
The PHP development team announces the immediate availability of PHP 7.0.0 Beta 2. This is the fourth pre-release of the new PHP 7 major series. All users of PHP are encouraged to test this version carefully, and report any bugs and incompatibilities in the bug tracking system.

WordPress 4.2.3 Security and Maintenance Release
WordPress 4.2.3 is now available. This is a security release for all previous versions and we strongly encourage you to update your sites immediately.

WordPress 4.3 Beta 4
WordPress 4.3 Beta 4 is now available. This software is still in development, so we don’t recommend you run it on a production site. Consider setting up a test site just to play with the new version. 

PEAR 1.10.0dev1 Brings PHP 7 Compatibility!
The new PEAR installer release adds PHP 7 support while dropping support for PHP 4 - 5.3. It also fixes a nasty SSL issue that made it hard to use on PHP 5.6. With the update, strict warnings about static calls to a non-static PEAR::isError() are a thing of the past.

MidWest PHP 2016
Midwest PHP returns on March 4-5, 2016 to Minneapolis at a brand new venue. We have moved across downtown Minneapolis and have landed at the Minneapolis Hilton. Make sure to sign up for our news letter for the latest information on Midwest PHP 2016, including when our call for papers will open and when tickets will go on sale. We can’t wait to see you next year.

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. Early Bird tickets are currently available.

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. Early bird tickets are available now.


PHP Town Hall #43: Midnight Express
Your two favourite PHP developers are joined this episode by Emir Karşıyakalı from PHPKonf and IstanbulPHP. Istanbul is not only a beautiful and awesome city, but it’s got a thriving PHP community too, who are currently hosting a whole bunch of PHP stars for their annual conference.

Three Devs and a Maybe Podcast - Erlang and Clojure with Steven Proctor
This week we are very lucky to be joined by fellow podcaster and host of Functional Geekery - Steven Proctor. We start off the discussion with how he got into programming from a young age, and how a 100 dollar experiment turned into the Functional Geekery podcast we know today. This moves us on to chat about Erlang/OTP and how the Actor model is used to provide such a robust language infrastructure. Finally, we speak about how fundamental principles out-weigh concrete implementation knowledge and Proctor gives us a host of resource material for interested listeners to delve into.

Acquia Podcast: Gender Balance in Tech Sales Through Data-Driven, Objective Hiring
At a recent Acquia all-company meeting, I was glad to hear that half of the current group of Acquia U students and 7 out of 12 of the latest "BDR" hires in Sales were women. Acquia's CEO, Tom Erickson added that this was the result of some "objective, data-driven" hiring practices. I had to know more. I got Acquia Senior Manager of Business Development and Sales, Chris Hemberger on the line to talk about all of this.

MageTalk Magento Podcast #52 - The Venn Diagram of Agreement
To Ioncube or not to Ioncube? That is the question. Whether 'tis nobler in the mind to suffer the slings and arrows of OSS developers' ire or take arms against a sea of neckbeards.

Full Stack Radio Podcast Episode 22: Corey Haines - The 4 Rules of Simple Design
In this episode, Adam talks to Corey Haines, author of "Understanding the 4 Rules of Simple Design". They talk about the importance of low-level design decisions, tricks for naming things well, why you shouldn't model your objects after the real world and, of course, Active Record.

Voices of the ElePHPant - PHP South Coast Wrap-up
This week Cal Evans talks to the organisers of PHP South Coast, about how it was started, all the planning involved and the speaker selection.

Reading and Viewing

Laravel News - Interview with Povilas Korop
This week Eric Barnes talks to Povilas Korop, creator of Laravel Daily, a site where each day he shares Laravel tips.

Speeding up The Web With PHP 7
See Rasmus Lerdorf's presentation from Oscon last week.

Pure HTML and CSS Dropdown Menu
This video tutorial from John Morris shows how to create a pure HTML and CSS dropdown menu.

Nginx High Performance (by Rahul Sharma, published 19 Jul 2015)
Configure Nginx for best performance, with configuration examples and explanations, plus step–by-step tutorials for performance testing using open source software.

Laravel 5.1 Beauty: Creating Beautiful Web Apps in Laravel 5.1 (by Chuck Heintzelman, published 6th July 2015)
Laravel 5 Beauty goes through the process of creating, designing and coding a real-world application in the number of PHP frameworks available today.


To post a job advert please contact [email protected]

Interesting Projects, Tools and Libraries

CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due.

The official Laravel local development environment.

The Invoke system helps you protect your application based on the endpoints and the URI requested. 

A clean, lean PHP beanstalkd client.

Atiaa is a thin wrapper around PHP's PDO database abstraction layer.

The Doctrine MongoDB project is a library that provides a wrapper around the native PHP Mongo PECL extension to provide additional functionality.

A lightweight PHP/JS router and MVC framework, built for hand written web applications.

Digital Asset Management PHP app.

Simple calculations-oriented threading library for PHP

PHPSA is a development tool aimed at bringing static analysis for PHP applications and libraries.

A compiler for SCSS written in PHP.

Simple raw PHP database experiment wrapped in Vagrant.

OpenCart is a free open source ecommerce platform for online merchants.

Flexible abstraction for working with queues in PHP.

A refreshingly simple PHP content management system and web framework.

Tools for Hypermedia REST API development in PHP.
Please help us by clicking to our sponsor:

 From our sponsors:
Group Chat & IM for Teams Communicate with co-workers in real time. Used by Netflix, Dropbox & Salesforce. $0/unlimited users. Get started >>
(Sponsor this newsletter

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 ©