|Hello PHP fans!
The PHP development team has announced two new releases this week, available immediately - 5.4.28 and 5.6.0beta2.
Last month, Heroku announced it has added native HHVM support to its cloud. Read Bruno Skvorc's thoughts about, and admiration of, the move.
Part Three of the series Refactoring Legacy Code has been published, this time concentrating on complex conditionals.
Also, Joomla! Day 2014 has been announced, taking place in July, in Minnesota. Register now to qualify for the early bird ticket discount.
Finally, we bring you four podcasts this week, covering such diverse topics as error handling, conference experiences, Go and laravel.
Enjoy your read, and keep spreading the word ;)
Help us keep PHP Weekly going
Please help us to keep doing this each week by visiting our sponsor:
From our sponsors:
HHVM and Hack on Heroku
In a move that surprised most but displeased none, Heroku, the Cloud Application Platform, has added native HHVM support to their cloud.
Some Rules for Good Naming
Naming things properly is very, very hard. It is one of the only two hard problems in programming. Are there any rules (even rules-of-thumb) that can be used to make it easier to pick good names for the classes and concepts in our projects?
The Rise of Composer and the Fall of PEAR
Fabien Potencier compares the two package managers.
Welcoming New Authors To sitepoint.com: March / April 2014
Bruno Skvorc welcomes six new authors who have joined the ranks through March and April. Some are pros, others are just getting there. With such a diversity in country of origin, this channel is quickly becoming a true melting pot of attitudes, approaches and thoughts.
Tutorials and Talks
Automatic Update of Packages from Version Control Repositories
The PHP Classes and JS Classes sites have just enabled a new feature that allows you to automatically update a package when its files have changed in the origin version control repository. Read this article to learn how it works,and how to disable it.
How To Use the JsonSerialisable Interface
Over the past few years JSON has taken over as the king of data interchange formats. Before JSON, XML ruled the roost. It was great at modeling complex data but it is difficult to parse and is very verbose. JSON really took off with the proliferation of rich AJAX driven sites as it’s a very human readable format, quick to parse and its simple key/value representation cuts out all the verbosity of XML.
Using Solarium with SOLR for Search – Setup
In this series we are introduced to both SOLR and Solarium side-by-side. We’ll begin by installing and configuring SOLR and creating a search index. Then, we’ll look at how to index documents. Next, we’ll implement a basic search and then expand it with some more advanced features such as faceted search, result highlighting and suggestions.
Dynamically Create Menu With PHP DOM
Creating menus using php is a task many programmers will need to do over and over again when developing applications and websites. Most PHP coders will have their own menu generation class that will take an array or an item and add it to an HTML un-ordered list, or other tag, and the styling is handled with CSS. This has proven to be a worthy solution to menu creation, however, PHP already has all the tools and classes built in to create a menu using DOM. It is both powerful and extensible and further eliminates the need for yet another class in your tree.
Refactoring Legacy Code: Part 3 - Complex Conditionals
Old code. Ugly code. Complicated code. Spaghetti code. Gibberish nonsense. In two words, Legacy Code. This is a series that will help you work and deal with it. Complex conditionals are hard to understand, so we need to find a way to simplify them.
Using Sessions in Zend Framework 2 - Part 2
This tutorial looks further at Sessions in Zend Framework 2, specifically investigating session validators and the different backend storage options available.
Token based authentication with Silex Applications
Sessions are the “standard” way to perform authentication in web applications, but when the application is a PhoneGap/Cordova application that uses a Silex server as an API server, sessions aren’t the best way. The best way now is a token based authentication.
|News and Announcements
PHP 5.4.28 Released
The PHP development team announces the immediate availability of PHP 5.4.28. 19 bugs were fixed in this release, including CVE-2014-0185. All PHP 5.4 users are encouraged to upgrade to this version.
PHP 5.6.0beta2 Released
The PHP development team announces the immediate availability of PHP 5.6.0beta2. As we entered the feature freeze with beta1, this release is almost exclusively a bugfix-only release. All users of PHP are encouraged to test this version carefully, and report any bugs in the bug tracking system.
FrOSCon 2014 - Call For Papers
The Free and Open Source software conference (FrOSCon), a summer conference for users and developers of FOSS, will this year be held on the 23th and 24th of August at the University of Applied Sciences Bonn-Rhein-Sieg in Sankt Augustin near Bonn, Germany. Registration and submission of contributions is open now until May 23rd, 2014.
JoomlaDay - July 19th 2014, Minnesota
A jam-packed day of Joomla learning, sharing and networking. Still a few early bird tickets left until the end of May, so hurry and register now.
In-Person Training Opportunities In Your City - The Crafting Code Tour
This summer, Brandon Savage will be touring around 18 different cities in North America. In some of those cities he will be offering in-person training sessions for any interested developers. Mastering Object Oriented PHP is a training seminar that focuses on beginning to mid-level object-oriented application development skills, covering PHP-specific behaviours, the SOLID principles in depth, basic design patterns and more. Find your city here and register now!
Three Devs and a Maybe Podcast: Exception and Error Handling
The Loosely Coupled Podcast: Conference Conversations
Episode 3 of the Loosely Coupled podcast was recorded live at Lone Star PHP. Since we were at a conference, we decided to do a meta episode about conference experiences and speaking at conferences. This episode covers information from how Jeff and Matt got involved with the conference community all the way through some advice on submitting your first talks. If you have never been to a conference, find a way to get to one soon. It’s more than just the presentations.
Laravel.IO Podcast - Episode 13
Cute Tools with Jeffrey Way, Taylor Otwell, Maksim Surguy and Shawn McCool.
dev/hell Podcast Episode #44: Gorf Fever
This week brings a new guest and a new sponsor! Paddy Foran is an old friend of Chris and Ed’s who makes his first appearance on the show, talking about the Go programming language, software architecture, open source projects and his new book “Your API is Bad.” They also welcome new sponsor Roave!
7PHP Interview - Chris Tankersley
The 7PHP team talk to Chris about his experiences at the Lone Star 2014 Conference last month.
Java EE and HTML5 Enterprise Application Development (by John Brock, Arun Gupta and Geertjan Wielenga, published 22nd April 2014)
Build and distribute business web applications that target both desktop and mobile devices. Co-written by Java EE and NetBeans IDE experts, this book fully explains cutting-edge, highly responsive design tools and strategies.
If you have a position that needs filling, let us know and we will include it.
Developer for Performance Telecom
Performance Telecom require a developer, based near Durham, UK, to work on an exciting Customer Satisfaction system. This role would suit someone with experience as well as someone who is willing to learn new 'stuff'. Contact firstname.lastname@example.org with your CV/Resume and for more information. This is NOT a remote position.
Kinesis Seeks Senior-Level PHP Talent! (Austin, Texas)
Kinesis is the established world leader for mobile survey software. We’re in the midst of refactoring our flagship product and reimagining our infrastructure as code using cutting edge tools and techniques. We’ve implemented distributed version control, continuous integration and inspection, and are aggressively re-architecting to support continuous delivery. We’re looking to add some experienced talent to our team to help us get there.
PHP Job in London with Signkick
Join a startup that is revolutionising the $33b outdoor advertising market.
Positions at Sailthru (New York City)
We're looking for Developers, DevOps, Test Engineers and DBAs. Learn more about what it's like to work here on our Muse page. Contact email@example.com for more information.
DeskPRO is hiring Full Stack PHP Developer (Symfony/AngularJS) in London or Remote.
Join our small London based team (excellent remote workers considered as well) building a large PHP application where your work will have immediate impact on our millions of end users. Lots of interesting projects coming up including adding elasticsearch and memached to our stack, writing a DeskPRO app for telephony based upon Twilio, integrating our software with other companies APIs, adding functionality to our phonegap mobile app as well as continuing the development of our core software platform.
PHP (Drupal) developers at Torchbox (Bristol and Oxford, UK)
Passionate about PHP, delirious about Drupal and want to work on a wide variety of challenging yet fun projects for fantastic clients? If yes, then Torchbox would love to hear from you! In return, we can offer an enviable working environment (country park or buzzing Bristol), a competitive salary, all the usual kit and sometimes even a ski trip.
Full Stack Developer
Major television production company seeks an experienced web developer to join its digital division. The ideal candidate possesses a deep expertise and abiding love of web development, an incredible track record of producing stellar web applications (with a long list of URLs & GitHub repositories to prove it), a near-supernatural work ethic and a fantastic sense of humour.
Message Digital Design Ltd is Hiring a Web Developer (PHP)
We are looking for an experienced developer to work in our spacious offices in central Brighton, helping to deliver high-quality websites, e-commerce and online systems to a wide range of clients. At Message we give a damn about building the web the right way, and the successful applicant will too.
Ballers Bridge is Hiring a Sr. Yii Developer
We are looking for a motivated and outstanding candidate to lead our product development. The ideal candidate is an experienced problem solver, quick thinker/learner, self-motivated and not afraid of challenges.
Senior PHP Developer in Bucharest, Romania
We are searching for a passionate PHP developer who will be part of a team of senior programmers and experienced testing engineers, directly involved in technical development projects, using Agile Scrum as methodology.
Interesting Projects, Tools and Libraries
A PHP vector library.
Laravel service provider to handle PHP errors, dump variables and execute PHP code remotely in Google Chrome.
A library to send templated transactional emails.
A PHP sitemap generation tool.
PHP Option Parser.
Library of text expression engines, for searching, replacing and testing text.
Phing killing PHP task runner.
A handful of tools for PHP developers.
Simple package for work with sessions.
A Docker client in PHP.
Lightweight IOC Container for PHP.
A nifty PHP 5.3 application library.
Convert a webpage to an image.
Elegant SSH tasks for PHP.
A transcoding tool abstraction library for PHP 5.3+.
A lightweight PHP library providing easy gravatar integration.
A clone of the official Wurfl PHP library updated for PHP 5.3.
So, how did you like this issue?