|Welcome back PHP fans!
Several releases this week from the PHP development team. 5.6.2, 5.4.34 and 5.5.18 are all available immediately.
If you have ever wondered about the League of Extraordinary Packages, Phil Sturgeon explains all, while the Three Devs and a Maybe team touch on it in their latest podcast.
The SitePoint team has published an article about PHP news you may have missed over the past few weeks.
Plus, Bruno Skvorc reviews Brandon Savage's new book Practical Design Patterns in PHP.
And we bring you a broad selection of podcasts, covering such diverse topics as Elephpantitus, Flysystem, Optimised Machine Code, and Hot Dogs........
Thanks for your continued support, please keep spreading the word of phpweekly.com :)
Help us keep PHP Weekly going
Please help us to keep doing this each week by visiting our sponsor:
From our sponsors:
The Future of PHP is Shared Power Tools
Ryan Weaver writes - When I think about the most historically popular web libraries and tools, I think of things built in PHP - like Drupal, WordPress, phpBB, or Joomla. These are the Great Pyramids of the web: they're impressive not only because of what they can do, but also because these original "wonders of the Internet" were built entirely without modern tools or real collaboration. Each project painstakingly thought about and solved the same problems from scratch. And despite that, the results were incredible. How? Because they leveraged the sheer size and passion of their respective PHP communities. But it makes me wonder: what crazy things could we build if we worked together?
An Open Letter To PHP-FIG - By Anthony Ferrara
Dear PHP-FIG, please stop trying to solve generic problems. Solve the 50% problem, not the 99% problem. Signed, Anthony. PS: Ok, so I wasn't going to leave it at that. What am I talking about, and why does it matter...???
What is The League of Extraordinary Packages?
Phil Sturgeon talks about The League of Extraordinary Packages, some of its goals, rules and projects.
PHP News You May Have Missed – September, October 2014
In an already familiar format on the SitePoint website, here’s more PHP news you may have missed over the past month or so.
Unit Testing Succinctly: Why Unit Test?
Unit testing can be used to verify correctness, and any side effect that occurs with regard to your development process must be balanced with the effort of writing and maintaining useful unit tests.
Unnecessary contrapositions in the new "Symfony Best Practices"
The recent release of the Symfony Best Practices book met with some negativity. Matthias Noback talks about how he feels the perception of the book, and the way it was released, could have been improved.
Tutorials and Talks
Building Advanced Email Features With IMAP and PHP
In this tutorial, I'll walk you through some real world examples of how you can use PHP and IMAP to build new features for managing your email - features that the big email providers haven't built for us.
How to use RabbitMQ with PHP
AMQP (Advanced Message Queueing Protocol) is a network protocol that can deliver messages from one application endpoint to another application endpoint. RabbitMQ is an AMQP broker that has support for several programming languages, such as PHP.
Creating Maintainable WordPress Meta Boxes: The Front-End
In the first two posts of the series, we laid out the initial directory structure, setup the code for the plugin, and discussed what the plugin will do. In the last post, we began to create the meta box and introduce the tabs that will contain each of the features that we're going to work on. This article will continue building on what we've done thus far.
Laravel Basics: Routing
If you’re like me, and have come to Laravel from using something like Codeigniter, routing may be something new. It’s built into Codeigniter, but it was very easy to ignore, and this was one of the reasons that initially put me off learning Laravel (I know right). Having taken the plunge and used it on a few projects though, I can definitely see the errors of my ways, and the massive benefits that proper routing can bring to your application!
Closures in PHP - Who Knew?
Using the Accept Header to version your API
To version any resource on the internet, you should not change the URL. The web isn't versioned, and changing the URL would tell a client there is more than one resource. But actually there aren't multiple resources, it's just a different representation of the same resource. Of course there are cases where you should change the URL; for example if you are changing the API in such a way that its functionality alters. In this particular case you could consider changing the URL as you could reason that it is not the same resource anymore.
WordPress Error Handling with WP_Error Class II
In the first part of this series on handling errors in WordPress with the WP_Error class, we took a look at an introduction of the PHP class, and we examined the class properties and methods and their roles and functions complemented by code examples. In this final part of the series, we will be building a fairly simple contact form plugin to demonstrate how to handle errors in plugin development.
Quick Tip: Up and Running with Drupal 8 in Under Five Minutes
In this quick tip, we’ll be installing a local instance of Drupal 8, beta 1. By the end, you’ll have a copy of Drupal that’s not only ready to be extended with Symfony bundles and other packages, but also ready to accept content and display it to end users.
Securing Your Server Login
This is a guide to a handful of common approaches to securing access to your Linux-based web and application server. You'll learn about adding two-factor authentication, changing your SSH port, activating a firewall and more.
|News and Announcements
ZendCon - October 27-30th 2014, Santa Clara CA
Next week sees the 10th year of the ZendCon event, powered by PHP. ZendCon is the place to catch up on news, float new ideas and share coding challenges with developers from around the globe. With three great conference tracks, an Unconference and the annual Meet-the-Team panel there really is something for every type of developer.
PHP 5.6.2 is Available
The PHP development team announces the immediate availability of PHP 5.6.2. Four security-related bugs were fixed in this release, including fixes for CVE-2014-3668, CVE-2014-3669 and CVE-2014-3670. All PHP 5.6 users are encouraged to upgrade to this version.
PHP 5.4.34 Released
The PHP development team announces the immediate availability of PHP 5.4.34. 6 security-related bugs were fixed in this release, including fixes for CVE-2014-3668, CVE-2014-3669 and CVE-2014-3670. Also, a fix for OpenSSL which produced regressions was reverted. All PHP 5.4 users are encouraged to upgrade to this version.
PHP 5.5.18 is Available
The PHP development team announces the immediate availability of PHP 5.5.18. Several bugs were fixed in this release. A regression in OpenSSL introduced in PHP 5.5.17 has also been addressed in this release. PHP 5.5.18 also fixes 4 CVEs in different components. All PHP 5.5 users are encouraged to upgrade to this version.
Sunshine PHP Conference - February 5-7th 2015, Miami
Hosted by the South Florida PHP Community, early bird tickets are on sale now. With some of the best speakers, awesome talk topics, latest technologies and up to date news in PHP, as well as a Hackathon and an Unconference, this year's event has something for every level of PHP developer.
Nomad PHP US - November 20th 2014 20:00 CST
Behat v3! Behavioral-Driven-Development, Functional Tests and Selenium, presented by Ryan Weaver. In this chat, I’ll introduce you to Behat (version 3!!!!): a behaviour-driven-development (BDD) library that allows you to write functional tests against your application just by writing human-readable sentences/scenarios. To sweeten the deal these tests can be run in a real browser (via Selenium2) with just the flip of a switch. If you asked me to develop without Behat, I’d just retire. It’s that sweet. By the end, you’ll have everything you need to start functionally-testing with Behat in your new, or very old and ugly project.
Nomad PHP EU - November 20th 2014 20:00 CET
Iterators in PHP, presented by Jake Smith. PHP iterators have been around since PHP 5, but are heavily under utilised. With all the built-in iterators there is no reason why you shouldn’t be leveraging its power and flexibility. In this session you will learn about all the built-in PHP iterators and be guided on how to extend and/or create your own iterators.
Lately in PHP Podcast #52 - Compiling PHP into Optimised Machine Code
The recent release of a new PHP compiler written in PHP by a Google PHP developer, as well as other solutions to compile PHP into optimised native machine code, is one of the main topics discussed by Manuel Lemos and Arturs Sosins on episode 52 of the Lately in PHP podcast. They also discussed the latest proposals for new features of PHP 7, as well the new MySQL plugin that allows accessing MySQL servers directly with HTTP exchanging data in JSON format.
PHP Town Hall #31: The One About Hot Dogs
This week Ben and Phil are joined last minute by repeat guests Kayla Daniels and Matt Frost. We talk waaaaay too much about hotdogs, Phil’s fun-employment, cocaine, and what’s new in PHP-land, along with plenty of other cool stuff.
Laravel IO Podcast: Episode 18 - Laravel 5 Routing, the War over PHP Annotations, and The Secret Weapon(tm)
In this episode we discuss new Laravel 5 features, including annotated routing and middlewares. We discuss some motivations and guiding forces that make Laravel what it is. Also, hints about Jeffrey and Taylor's secret new project.
The Loosely Coupled Podcast: Episode 12 - Elephpantitus
In this episode Jeff and Matt finally discover the mystery of the Trello card “Elephpantitus” and attempt to cover how important or unimportant it is to diversify your programming background within a given language community. Perhaps it’s a good idea to focus on being a PHP developer rather than a WordPress developer or a Magento developer, or maybe it isn’t. This episode could be titled "Maybe" since they weren’t really sure which way to lean starting out.
Three Devs and a Maybe Podcast: Flysystem with Frank de Jonge
This week we are lucky to have Frank de Jonge (of Flysystem fame) on the show. Our discussion starts off with an update on the latest Snapchat security vulnerability, and if there is any real point in the service to begin with. We then move on to chat about how Frank got into software development and his method for handling freelance work, by way of meeting his own expectations. This leads on to a talk about Flysystem, how the package came about and its addition to 'The League of Extraordinary Packages'. Finally, we touch upon the PHP community in Amsterdam and the great times had at Laracon Europe this year.
Voices of the ElePHPant - Interview with Ross Tuck
This week Cal Evans chats with Ross Tuck, member of the PHP community and a well known speaker on the circuit.
Book Review: Practical Design Patterns in PHP
Bruno Skvorc reviews Brandon Savage's new book, giving his opinions and impressions of both the book and the aspect of self-publishing.
PHP Developer, Barcelona
ExoClick is an innovative global ad network serving over 125 billion geo-targeted ad views a month to web and mobile advertiser/publisher platforms via its proprietary software. As we are expanding our development team, we are looking for a PHP Developer to join us. You will be part of an international team, developing specific projects. Do not hesitate to apply if coding is your passion!
Interesting Projects, Tools and Libraries
Rubix API wrapper in PHP.
A PHP client for consuming Yelp API.
Simple PHP library for posting to several social networks.
PHP EventStore Implementation.
PHP json wrapper library.
Native PHP template system that's fast, easy to use and easy to extend.
Classes for the busy PHP developer to work with Apache Solr.
Sphinx extension for PHP projects.
A library for creating, editing, and comparing semantic versioning numbers.
Laravel Form builder for version 4 and 5.
High performance PHP router.
A database abstraction layer for PHP.
PHP 5.4+ full-stack web framework.
A PHP library that aims to improve session handling from the ground up.
Less than a framework, more than a library.
PHP captcha library.
Lightweight PHP handler for iredis with redisent fallback.
So, how did you like this issue?