|Welcome PHP Fans!
Lots of releases from the PHP team this week, including the immediate availability of PHP 7.0.0 Alpha 1, as well as PHP 5.4.42, 5.6.10 and 5.5.26..
Also the PHP Uruguay user group has announced its first ever PHP day this summer, which also happens to be a free event!
Ben Ramsey continues to blog about PHP at 20, discussing how a one-time 'silly little project' has transformed into a web powerhouse.
Plus the Programming with Yii2 series continues, this week exploring Timestamp Behaviours.
And finally, the That Podcast team invites Taylor Otwell to join them, whilst the Three Devs and a Maybe team is joined by Adam Wathan.
Enjoy your read,
Katie and Ade
We love our sponsors. Why not try them?
With just a few lines of code, Clarify gives you the power to search and understand any audio and video from phone calls to news broadcasts to conference presentations. Get started today.
PHP at 20: From Pet Project to Powerhouse
The one-time ‘silly little project’ has transformed into a Web powerhouse, thanks to flexibility, pragmatism, and a vibrant community of Web devs, writes Ben Ramsey.
Ten Pillars of Modern PHP Development
For most PHP developers, writing applications now, compared to ten or so years ago, is quite a different endeavour. Back then, many of us were rather web designers; responsible not only for backend development, but database engineering, system administration, frontend programming and maybe conceiving and designing the very UI as well. This has changed in recent years, with web developers concentrating on web applications, bringing a new mindset about how PHP development should be done, and what tools should be used.
The PHP Elephant Stampede
Do you have a toy PHP elephant? A blue one, or an exotic other colour, maybe even a jumbo version? Maybe even more than one? Good, put it or them down on the floor, step away from it for about 5 metres or so, and look back. You bought this with your hard owned money. You’ve earned it. It’s yours. But think about this for a while: what if the literally thousands of dollars we, as a community, spent on stuffed animals, what if we spent that same amount of money on PHP itself?
Drupal 8 Security Bug Bounty Program: Get Paid to Find Security Issues in D8
Drupal 8 is nearing release, and with all the big architectural changes it brings, we want to ensure D8 upholds the same level of security as our previous releases. That's where you come in! The security team is using monies from the D8 Accelerate fund to pay for valid security issues found in Drupal 8, from now until August 31, 2015 (open to extension). This program is open for participation by anyone.
Tutorials and Talks
Style Different Categories in Your WordPress Site Differently Using CSS
In the previous tutorial I showed you how to style the posts on your main blog page according to their category, creating colour coding by category. A lot of sites that use this technique also take it further by adding distinct styling to each section of their site, in a way that co-ordinates with the styling on the main blog page or home page.
Leaflet Map Search Using AJAX Requests to a PHP and MySQL Mapping Application
Multiple Editors per Node in Drupal 7
One of the things that makes Drupal great is its flexible user permission system. The out of the box permissions grid we are all familiar with covers most use cases of controlling what users can and cannot do. It is also very easy for module developers to create new permissions and roles that restrict the logic they implement. Nevertheless, sometimes the default configuration options are not enough. In this article I am going to show you my solution to this problem in the form of a simple custom module.
Transparent Pixel Response with Symfony, How to Track Email Opening
Boxing Up Your Apps as Phars Quickly and Easily With Box
In this tutorial, we’ll use Box to package a PHP application into a Phar, in order to make it easily distributable and globally installable via Composer.
Creating Artisan Commands with the New, Simpler Syntax in Laravel 5.1
If you're not familiar with Artisan commands, they're command-line functions that you can run to interact with your Laravel application.
How To Install Linux, Apache, MySQL, PHP (LAMP) Stack on Debian 8
The LAMP stack of software, consisting of the Linux operating system, Apache web server, MySQL database, and PHP scripting language, is a great foundation for web or application development. Installed together, this software stack enables your server to host dynamic websites and web applications. In this tutorial, we'll walk you through the installation of this software on a Debian 8 (Jessie) DigitalOcean Droplet.
Mocking Hard Dependencies in Legacy Code
Ben Ramsey is working on an application that’s been around for a while. It uses a lot of static methods, and often, it instantiates objects from inside methods. This can make it a pain to test. Sometimes he can refactor the code so that dependencies may be injected, but often he can’t confidently refactor the code without breaking something somewhere else - because he doesn’t have enough tests. It’s a chicken-and-egg problem. Recently though, Ben found a way to test some of this untestable code, using Mockery with PHPUnit.
Programming With Yii2: Timestamp Behaviour
In this Programming With Yii2 series, I'm guiding readers in use of the newly upgraded Yii2 Framework for PHP. In this tutorial, we'll explore Timestamp Behaviours, which reduce the amount of code you need to write with each new model for the common operation of creating timestamps for inserts and updates. We'll also dive into the Yii2 source code, examining how a behaviour is implemented.
How to Create a Secure Websocket Connection
Exploring Github’s Public Events with PHP and Google BigQuery
If you’ve been following along with Younes Rafie's previous articles about Github’s API, you know that Github’s developers are doing their best to ease the pain of interacting with Github data. In this article, we’re going to take a look at the Github public events API, and build a small demo along the way.
|News and Announcements
PHP 7.0.0 Alpha 1 Released
The PHP development team announces the immediate availability of PHP 7.0.0 Alpha 1. This release marks the beginning of the 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.
PHP 5.4.42 Released
The PHP development team announces the immediate availability of PHP 5.4.42. Six security-related issues in PHP were fixed in this release, as well as several security issues in bundled sqlite library (CVE-2015-3414, CVE-2015-3415, CVE-2015-3416). All PHP 5.4 users are encouraged to upgrade to this version.
PHP 5.6.10 is Available
The PHP development team announces the immediate availability of PHP 5.6.10. Several bugs have been fixed as well as several security issues into some bundled libraries (CVE-2015-3414, CVE-2015-3415, CVE-2015-3416, CVE-2015-2325 and CVE-2015-2326). All PHP 5.6 users are encouraged to upgrade to this version.
PHP 5.5.26 is Available
The PHP development team announces the immediate availability of PHP 5.5.26. Several bugs have been fixed as well as several security issues into some bundled libraries (CVE-2015-3414, CVE-2015-3415, CVE-2015-3416, CVE-2015-2325 and CVE-2015-2326). All PHP 5.5 users are encouraged to upgrade to this version.
PHPday - August 8th 2015, Montevideo Uruguay
The PHP Uruguay user group has announced its first PHPday, with presentations and workshops related to Web technologies. Tickets to this event are free!
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.
Bulgaria PHP Conference - 25-27th September 2015, Sofia
This event is the initiative of a small group of developers who started the first PHP User Group in Sofia, Bulgaria just two years ago. Our desire to learn and our love for the code gave us the courage to take the initiative and bring some of the best minds in the PHP community to our home town. We have invited some top-notch speakers from all over the world who will make sure you will enjoy some high-quality talks. But most of all, we hope to get together some great people who will spend their weekend sharing their know-how and getting to know the large PHP community. Early Bird tickets are available now.
App Sec USA - September 22-25th 2015, San Francisco
AppSec USA 2015 is a 96-hour conference in beautiful San Francisco that will include the best talks and training on application and information security. It is a world-class security conference for developers, auditors, risk managers, technologists and entrepreneurs - a gathering of the world’s top security practitioners to share their latest research and practices. Tickets are available now.
DevConf - June 19th 2015, Moscow
Laravel IO Podcast: Episode 29 - PHP, Sublime Text, & Decorative Urns
In this episode, the crew discusses 20 years of PHP, their favourite PHP features, Sublime Text, PHP Storm, Nintendo, and Jeffrey's first programming job.
The Loosely Coupled Podcast: Episode 22 - Resolution Won't Fix
In this episode Jeff and Matt talk about a very important skill all developers need to learn: how to say no. Saying no is pretty easy but there are ways to appropriately convey the reason why doing what is being asked is not a good idea.
That Podcast Episode 19: The One Where Taylor Joins The Conversation
Some time ago Dave had the idea to bring Taylor Otwell, creator of Laravel, on the show as he fit our general theme very well - he's a Dad, a programmer, and is definitely an entrepreneur. Arrangements were made and since then, Beau has launched his first two Laravel apps and has started to use both Forge and Envoyer. Dave, too, has worked with Laravel a bit in the past, so it was a great time to have Taylor on the show to talk life and shop.
Acquia Podcast: Drupal 8 - 1st product of the PHP-FIG Era
I was happy to talk with two major contributors to Drupal 8 at the same time at Drupal South 2015 in Melbourne, Australia. At the time we recorded our conversation in March 2015, Hussain Abbas from Bangalore, India and Jibran Ijaz from Lahore, Pakistan had both contributed well over 100 patches to D8. In this podcast we talk about their history in Drupal, open source software as a force for good in society, the benefits of contribution, Drupal as the 1st project of the PHP-FIG era, Drupal 8 for developers, the incredible energy and size of the Australasian Drupal community, and more.
MageTalk Magento Podcast #45 - The Netherdutch Strikes Back
Phillip is so two-thousand-and-late. Guido is the new hotness. Kalen and Guido catch up on MMNL 2015.
PHP Round Table Podcast Episode 22 - All About PSR-7
PSR-7 is the latest accepted member to the PHP FIG's standards library. We discuss what PSR-7 is, how it utilises streams, immutability & middleware, and how it will affects you as a developer.
Voices of the ElePHPant - Interview with Matthew Weier O'Phinney
This week Cal Evans talks middleware and PSR-7 with Zend Framework team member, and PHP developer, Matthew Weier O'Phinney.
Three Devs and a Maybe Podcast - Podcasting, Remote Working and Testing with Adam Wathan
This week we are very lucky to be joined by fellow podcaster and host of Full Stack Radio - Adam Wathan. We begin the discussion with his reasons behind starting a podcast, his experience being a solo-host and the secret to great podcast recordings. We then move on to how he got into programming at high school - with reflection on that if he had been using a Windows machine at college, he would most likely be a .NET developer by now. As both Edd and Adam work remotely at this time, the topic of remote pair-programming and Kanban style board implementations then arises. Finally, we discuss his thoughts on Message-passing vs. strict-contracts, Smalltalk and Elixir exploration and how it is hard to give a definitive answer on the best way to begin learning TDD.
Backup – How phpbu Can Help (Nomad PHP Video)
Backups are often considered a necessary evil. But having a backup when you really need it is one of the best things, just like it is the worst thing if you need a backup and you realise you don’t have one. I created phpbu to take out some of the evil, make backup stuff easy and equalise the backup process for different projects. In this talk I’ll give you a short introduction of phpbu and show you how easy a backup could be.
IPC 2015 - Deep Dive into Browser Performance
Slides from Ilia Alshanetsky's presentation at IPC 2015.
WordPress Web Application Development (by Rakhitha Nimesh Ratnayake, published 28th May 2015)
Develop rapid web applications using the core features of WordPress, and explore various workaround techniques to prevent maintenance nightmares by identifying the limitations of WordPress.
PHP Capacitor (by Andrew Walker, published 11th June 2015)
Do you want to know how to build up virtual stores? Virtual shopping windows? Social networks, relationship sites, corporate portals? Whatever your objective is, it has something in common: it makes use of the same programming resource in order to be built up. And these resources are going to be covered by this book once we will be approaching concepts, techniques and principal programming practices while working with them.
Helpling in Berlin is Looking for Experienced PHP Developers (m/f)
Helpling is one of the most dynamic start-ups in the vibrant centre of Berlin, Germany. It is our mission to provide our services as easily accessible and conveniently as possible. To achieve that, our service is available online and through our mobile app. Up to this point, Helpling is active in more than 200 cities in 12 countries around the globe. To enhance the technical architecture behind the scenes, we are currently looking for experienced PHP Developers (m/w) to join our highly professional and dynamic IT team in Berlin.
Operations Engineer - Expensify
Expensify prides itself in solving a real world problem with a team of motivated, top notch engineers. We are passionate about eliminating our customers’ expense report pain, and are looking for equally passionate people to join our team. Operations Engineering is responsible for overseeing the development, implementation and maintenance of the infrastructure used by our applications. We work closely with the product development team to expand and enhance our deeply integrated service platform. Our goal is to develop and support a platform for consistent deployment, while ensuring operational flexibility.
To post a job advert please contact firstname.lastname@example.org
Interesting Projects, Tools and Libraries
This package provides a handy way to work with strings in PHP.
Brew & manage PHP versions in pure PHP at HOME.
HaPHPy Birthday is about creating a community video celebrating 20 years of the PHP language and its users involvement.
PHPTF is a very tiny framework written in PHP for your projects with many features.
Sylius is an open source e-commerce solution for PHP, based on the Symfony2 framework.
The Box application simplifies the Phar building process.
Redis PHP job queue.
A small and super simple PHP framework.
A virtual machine designed for executing programs written in Hack and PHP.
Web-based PHP and Ajax news feed aggregator, designed to allow you to read news from any location, while feeling as close to a real desktop application as possible.
A library of essential encryption functions for PHP.
Mini Edit is an open source desktop application for edit files like PHP, HTML and Pascal using UTF8 encoding.
A curated list of awesome command-line frameworks, toolkits, guides and gizmos. Inspired by awesome-php.
Dive ORM Framework (PHP)
PsySH is a runtime developer console, interactive debugger and REPL for PHP.
Phansible is a simple generator for Vagrant projects, targeting PHP development environments, using Ansible as Provisioner.
|Please help us by clicking to our sponsor:
From our sponsors:
So, how did you like this issue?
Protect your PHP code with SourceGuardian 10. Free trial.