|Welcome back to phpweekly.com. With the festive season well and truly upon us, catch up with the latest instalments in Derrick Rethan's Contributing Advent project.
An interesting chat this week with web developer Jeremy Kendall, sharing his opinion on the Slim PHP micro framework.
Sign up to the mailing list for the soon to be released ebook from Paul Jones, based on his popular conference session "It Was Like That When I Got Here".
If you would like to be a speaker at next years php[tek] conference in Chicago, the Call for Papers is now open. Find out all you need to know.
We love getting feedback, suggestions and articles from all of our readers. Don't be shy, tell us what you think ;)
Help! I'm Drowning in Legacy Code!
Brandon Savage looks to reassure those developers drowning in legacy code that Rome wasn't built in a day, and neither was your application.
Empowering PHP Development Using HTML5
HTML5 has been successful in creating its mark in today’s technology-driven world. In addition to the flexibility of developing attractive yet user-friendly websites, HTML5 has also served as an excellent help to the designers and developers. If you’ve chosen PHP for developing your website/web applications then HTML5 can definitely prove to be an excellent option for markup language. As you read on, you should find out about the numerous advantages of using HTML5 in PHP development.
The Definitive Remote Debug and Unittest with PHPStorm Guide
PHPStorm is probably the best IDE when it comes to PHP development. During the last few years, a typical development environment shifted from simple a local LAMP stack to multiple complex environments on virtualised platforms with the help of configuration management tools like puppet, chef and Vagrant. But developing in these virtualised environments isn’t always as obvious as it is when developing on a local system.
Have You Tasted Slim PHP Micro Framework?
Web Developer Jeremy Kendall shares his opinions on the subject in a chat with 7PHP.
Tutorials and Talks
How To Calculate an Age By Birthday Using PHP
This PHP function accepts a birthday as a parameter and will return the age based on that birthday. Handy for social sites/applications.
Install Nginx, PHP-FPM, MySQL and phpMyAdmin on OS X Mavericks using Homebrew
Recently Jonas Friedmann received a new retina MacBook Pro to work with and decided to set it up from scratch, because he has been using the same Time Machine backup to migrate from for about four years. Perfect time to get rid of the web server/LAMP (Linux Apache MySQL PHP) stack and replace it with Nginx and PHP-FPM as FastCGI implementation. In this article you can read how to setup Nginx, PHP-FPM, MySQL and PhpMyAdmin on OS X 10.9 / Mavericks.
Benchmark Analysis of PHP Array Loops
The last post Mark Curry wrote provided examples of different ways to use array manipulation in PHP. An amazing number of people replied with a compelling argument, saying it’s better to use a foreach statement instead of the array_walk function. As with all comments he receives about his articles, Mike thought hard on the idea. What is the fastest way achieve the end result? He decided to take 5 different methods and use xhprof to collect runtime data, then analysed these results to determine the best method(s). All tests were executed using PHP 5.5.6 on a Macbook Air.
Feature Flags and Doctrine Entities
Benjamin Eberlei writes - I was in a discussion with some of the EasyBib developers this week about how to use feature flags with Doctrine Entities, Metadata Mapping and their database. The problem of feature flags with Doctrine is easily explained: If you add properties for a new feature that is disabled in the Doctrine metadata, then you need to upgrade the database before deployment, even when the feature is not being rolled out for some days/weeks. Doctrine requires the database to look exactly like the metadata specifies it. You can get around this problem by using the loadClassMetadata event quite easily.
Fun With Array Interfaces
Programmer Jeune Asuncion has posted an article on Sitepoint this week, talking about how much he enjoys learning how things are done differently in other languages and seeing if he can do the same in PHP.
Implementing Automatic Database Backup and Optimisation in PHP
Every computer system has a backup. Nevertheless, the number of problems caused by a lack of a recent backup is huge. One of the reasons for that may be the fact that the backup process is not entirely automated. So, let's see how to automate the database backup process in PHP.
Introduction to Scaling PHP Applications – Part 2
This is the second blog in a two-part series on scaling PHP applications. The first blog in the series focused on replacing Apache+mod_php with Nginx+PHP-FPM. This blog will go into advanced topics that need consideration when moving a LAMP stack to a scaled architecture.
PHP and MySQL on Windows Azure
SitePoint and Windows Azure have launched a Push The Web Forward contest. It's a contest that requires you to sign up for a trial account on Windows Azure and deploy any app there, to be eligible for a draw in which you can win up to $3000 per app. You can even check out the current entries by visiting the gallery. This article takes an in-depth look at this environment.
How Much Memory Does Magento Use?
This question was put to developer Kevin Schroeder during a recent training session. Promising to investigate, this article gives the results of his measurements.
Contributing Advent 9: Day of the Week
This is another one in the Date/Time extension series. Derrick looks at bugs which both deal with PHP getting the Day of Week wrong in years before 1600. In an unusual twist it would appear that it was he who introduced the bug in the first place, about 7 years ago.
Convert UTC/GMT or any Time Zone to Local Time in PHP
Wrangling dates and times can be a somewhat arduous task for all programmers. One very common requirement is to convert a time from one time zone to another. In PHP this is greatly simplified with the DateTime standard library classes and especially DateTimeZone.
|News and Announcements
php[tek] May 19th-23rd 2014, Chicago USA
The Call for Papers is now open. Learn how the selection process works and review the Speakers Package before submitting your proposals.
Joomla! Framework 1.0 Released
The Joomla! Project and Community is excited to announce the release of the Joomla Framework! The Joomla Framework is a major step forward in the evolution of the Joomla! Project. Taking advantage of years of experience in creating the Joomla! CMS and later the Joomla! Platform, the development team has extracted and refactored many of the essential functions necessary to create, manage and deploy a modern PHP web application and compiled them into a library of modular packages that can be easily mixed and matched with other PHP frameworks and packages using Composer for dependency management.
WordPress 3.8 RC2
Release Candidate 2 of WordPress 3.8 is now available for download. This is the last pre-release, and we expect it to be effectively identical to what’s officially released to the public on Thursday.
Book Announcement: Modernizing Legacy Applications in PHP
Paul M.Jones has announced the imminent release of his ebook. Using his talk “It Was Like That When I Got Here” as a starting point, he has condensed 15 years of fixing PHP codebases into a collection of specific steps to complete in order. Sign up to the mailing list here for further information, including when it will be available for purchase.
Apache Solr PHP Integration (by Jayant Kumar, published November 25th 2013)
Build a fully-featured and scalable search application using PHP to unlock the search functions provided by Solr.
Handsonlabs in PHP/MySQL (by Owoeye Oluwatobi, published November 30th 2013)
This book completely hastens up the php/mysql learning field, skill acquisition for entry-level to advanced Web Application Developers alike for the php programming language as well as MySql Database Administration. It introduces key fundamentals for Object Oriented programming and also gives headway hints to online freelance employment opportunities no one can afford to miss.
PHP 52 Success Secrets - 52 Most Asked Questions On PHP - What You Need To Know (by Robin Koch, published December 2nd 2013)
There has never been a PHP Guide like this. It contains 52 answers, much more than you can imagine; comprehensive answers and extensive details and references, with insights that have never before been offered in print. Get the information you need--fast! This all-embracing guide offers a thorough view of key knowledge and detailed insight into everything you want to know about PHP.
PHP Beyond The Web (by Rob Aley, available now)
Leverage your existing web based PHP skills to write all types of software. CLI scripts, desktop software, network servers and more - this book will give you the tools, techniques and background necessary to write just about any type of software you can think of, using the PHP you already know.
If you have a position that needs filling, let us know and we will include it.
Junior Developer for Performance Telecom, Newcastle Based.
Performance Telecom are looking for a Junior developer, based in Newcastle upon Tyne, to work on exciting big data and telecoms projects. This role would suit a recent graduate, though also someone who can drive and has access to their own transport. Contact firstname.lastname@example.org with your CV/Resume. This is NOT a remote position.
Developer at Sailthru (New York City)
We're searching for a talented developer who can take the challenge of scaling architectures and dive into leading technologies. You'll have the opportunity to work with a great team, in the heart of New York City and with great benefits such as working from home. Send your resume to Federico, email@example.com.
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.
Machine Learning / AI skills (project based)
Inovica are looking for someone to work with them on detecting ecommerce products on sites and extracting relevant information. In the first instance please email firstname.lastname@example.org stating the experience you have in this field. They don't have a job description online but will reply to every email they receive.
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.
PHP Engineers for Bright.Com in San Francisco
We are looking for PHP engineers to join our growing team! The ideal candidate is language agnostic, and can work with both scripting languages (such as Python and PHP) as well as strongly typed languages (such as C++ and Java), and has a passion for taking an idea and exploring, tinkering, debating, and demonstrating the fastest, most efficient, flexible and scalable implementation approaches. Experience working with traditional SQL databases as well as newer technologies, indexes and data stores is key (such as Solr, ElasticSearch, Redis, or Neo4j), and you must be comfortable using Linux and other open source technologies.
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
The PSR-4 library provides a simple implementation of the PSR-4 standard. Also bundled with the library are classes for debugging the class autoloading process, as well as caching for improved performance.
This is a meta package for Composer that provides the PHP Quality Assurance Toolchain tools needed for the Template for Jenkins Jobs for PHP Projects.
The Iniscan is a tool designed to scan the given php.ini file for common security practices and report back results. Currently it is only for use on the command line and reports the results back to the display for both Pass and Fail on each test.
Standalone PHP library for easy devices notifications push.
PHP Client Library for calling hosted Native5 services.
PHP web essentials.
A PHP library for compacting the contents of files.
Wrapper around PHP Reflection to make it easier to use.
A resource watcher allows you to watch a resource for any changes. This means you can watch a directory and then listen for any changes to files within that directory or to the directory itself.
CLI support for PHP applications.
Simple router class for PHP.
Patchwork UTF-8 gives PHP developers extensive, portable and performant handling of UTF-8 and grapheme clusters.
A PHP library for creating and reading (without the phar extension) PHP archives.
A collection of utility classes to work with PHP primitive types.
Paymentwall is the leading digital payments platform for globally monetizing digital goods and services. This library allows developers to use Paymentwall APIs (Virtual Currency, Digital Goods featuring recurring billing, and Virtual Cart).
A PHP library with a variety of string manipulation functions with multibyte support. Offers both OO method chaining and a procedural-style static wrapper. Compatible with PHP 5.3+. Inspired by underscore.string.js.
So, how did you like this issue?