|Hi there PHP fans.
This week we bring you Jordi Boggiano's yearly data on PHP version usage, for 2015 to date.
Also we take a look at the ultimate guide to payment providers Stripe and Braintree, comparing both in depth to help developers and businesses make a choice between the two.
The Sound of Symfony podcast is back after a six month break, with a new format and two new hosts. In this episode they discuss how Symfony has kept up.
Plus in the second part of the Magento theme development series, the basic directory structure of the new theme is set up.
And finally, ConFoo is on the way, next February in Montreal. A multi-technology conference for web developers, discounted tickets are currently on sale.
Love to hear your thoughts and opinions on all we do here at PHPWeekly, so please keep in touch.
Katie and Ade
We love our sponsors. Why not try them?
From our sponsors:
||DataNerd Create a free account with New Relic and get this swanky shirt for FREE!
(ads by LaunchBit)
PHP Versions Stats - 2015 Edition
It's that time of year again, when Jordi Boggiano updates his yearly data on PHP version usage. Last year's post showed 5.5 as the main winner and 5.3 declining rapidly. Let's see what 2015 brought.
7 Steps to Make Money on Upwork
If you’re struggling on Upwork, or would simply like more from your effort, John Morris shares how he made it work for him in seven easy steps.
Voting is Open for the Symfony Community Awards 2015
With less than two weeks to go until SymfonyCon Paris 2015, it’s finally time to vote for your Symfony Community Awards 2015. This year, there are 9 Symfony Community categories to distinguish the 9 exceptional Symfony Community members who best helped, supported or contributed to the entire community. Find out all the categories and how to vote here.
Tutorials and Talks
Magento Theme Development: Bootstrapping
In this second article of our Magento theme development series, we’ll set up the basis of our new theme. We’ll set up the basic directory structure of our new theme, inherit it from Magento's default Responsive theme, place the CSS, JS, and images in the appropriate locations, and create a new local.xml file for our new theme to include these CSS and JS files into our website’s header. So, let’s get started.
PHP Automated SMS Gateway for Request and Response Service - Part 1 - The Basics
Would you like to set up an automated service on your web site that can interact with SMS text messages sent by your users? Setting up your own interactive web based text messaging service can be a daunting and expensive undertaking. Fortunately for us, there is a web service that can do the heavy lifting for us and the best part... it is free. Read this article to learn how to use the dotGo gateway service to receive and respond to requests sent via SMS using PHP Web scripts.
The Beginners Guide to WooCommerce: Adding Coupons - General Settings Part 2
In my previous article I started off with the procedure to add new coupons in WooCommerce. There I explained the coupon title and description along with the various Discount types in the section of General Coupon data. Today, I will continue with the remaining options which you'll find in the General settings tab while adding a new coupon.
Stripe vs Braintree: The Ultimate Guide
If you’re developing an app that needs to accept payments, you’ll likely consider Stripe and Braintree as payment providers. They’re a new breed of full-stack payment companies that are friendly to both businesses and developers. This article compares Stripe and Braintree in depth, to help developers and businesses make an informed decision.
Enabling HTTP/2 Support on Apache2 and PHP
I’ve been a keen follower of the changes to the HTTP specification over the past few years – with the release of the HTTP/2 standard (after it evolved from spdy). In light of these changes and of the ever increasing browser support for this feature, I wanted to give it a go. I had a site on a Digital Ocean droplet, running on Ubuntu 14.04 (LTS) and the LAMP stack already with a SSL certificate setup (the perfect candidate). After digging around on various blogs discussing the topic, I came across a few guides which helped. This tutorial is a mixture of a few.
Git Won't Check Out A Path It Autocompleted
One of my git repositories has developed a tendency to refuse to checkout a feature branch locally that exists on the remote repo. My git bash completion works, but then strange things happen! It turned out to be that I had two remotes with the same refspec, so I thought I'd write down the behaviour I saw and hopefully help someone else to fix this problem faster if they see it.
How to Easily Search DOCX, DOC, PDF Documents in PHP Converting Them to Plain Text
In the last decades, the massive digitalisation of processes has made companies and individuals produce a lot of rich text documents in the DOCX, DOC and PDF formats. This caused a problem because when we need to search the contents of these documents we need to look at the text content that they contain. Read this article to learn how to solve the problem of searching and indexing these documents, using a PHP class that can easily extract the text contents.
Magento Selenium Testing
On Kevin Schroeder's blog this week, he shares his experience with selenium testing when tasked with building out automated testing for a Magento 1 module.
Understanding the Details of WordPress Theme Development Standards
WordPress theme development is more than just creating an appealing design. It includes writing clean code, testing of all types of content, and using the right template files. However, one of the most important things to take care of is the WordPress theme development standards. Yes, there are certain Theme Development standards set by WordPress which should be followed strictly. Therefore, we have gathered important standards to help you get started.
Powerful Custom Entities with the Diffbot PHP Client
A while back, we looked at Diffbot, the machine learning AI for processing web pages, as a means to extract SitePoint author portfolios. That tutorial focused on using the Diffbot UI only, and consuming the API created would entail pinging the API endpoint manually. Additionally, since then, the design of the pages we processed has changed, and thus the API no longer reliably works. In this tutorial, apart from rebuilding the API so that it works again, we’ll use the official Diffbot client to build custom entities that correspond to the data we seek (author portfolios).
|News and Announcements
Drupal 8.0.0 Released
This week we released Drupal 8.0.0, the first fully supported release of Drupal 8! This is the biggest update ever to Drupal, our open source content management platform.
Zend Framework 1.12.17 and 2.4.9 Released!
The Zend Framework community is pleased to announce the immediate availability of Zend Framework 1.12.17 and Zend Framework 2.4.9.
Sunshine PHP Conference - February 4-6th 2016, Miami
The SunshinePHP Developer Conference is hosted by the South Florida PHP Community (SoFloPHP) in Miami, Florida from February 4th - 6th, 2016, and you're invited! We'll host some of the best speakers, awesome talk topics, latest technologies, and up to date news in PHP. And don't forget our Hack-a-thon and Uncon'ference, as well as a great hallway track and fun social events! Early bird tickets are on sale now, for several more weeks.
ConFoo.CA - February 24-26th 2016, Montreal
ConFoo is a multi-technology conference for web developers. With 150 presentations by popular international speakers, focused on pragmatic solutions for web developers, you'll enjoy great content and amazing experiences. Discounted tickets are on sale now, until January.
Nomad PHP US - December 17th 2015 20:00 CDT
Using APIgility to Build APIs Everyone Can Enjoy, presented by Cory Fowler. APIs are at the heart of all modern Web/Mobile experiences. The flexibility of an API layer ensures that both internal and external developers can access the functionality of your system. The question is, how do we build an API and truly enable anyone to use it? Join Cory Fowler as he builds an API using APIgility and Azure App Service to make scalable and consumable APIs, which can hold up to todays tough traffic.
Nomad PHP EU - December 17th 2015 20:00 CET
PHP Projects Beyond the LAMP Stack, presented by Thijs Feryn. For people in open source, LAMP is a very common acronym. But as your site or application gets more popular, you’ll notice that your stack needs more than just Apache, MySQL and just PHP: there are more pieces to the puzzle. This talk will feature a bunch of “new” components that are used by modern day applications at scale. Components like: Nginx, Varnish, ElasticSearch, Redis, RabbitMQ, NodeJS, Go, HVVM and many more. The end goal is to assemble a proof of concept that is fast, scalable, highly available and modular. We’ll still use PHP, but only where it makes sense.
MageTalk Magento Podcast #69 - Jamon of the Turducken
We eat jamon with Alexander Galtsow of Aheadworks.
Three Devs and a Maybe Podcast - PHP Internals Catch-up With Joe Watkins
On this weeks show we are lucky to be joined by recurring guest and friend of the show Joe Watkins. We start off the discussion with the upcoming PHP 7 release, the reasoning behind why it has been postponed, the bright future of adoption to the release compared to previous versions, and how the release gets packaged up for different distributions. We then move on to touch upon uopz (User Operations for Zend), how it helps aid getting code ‘under-test’ and the progress made to make it compatible with PHP 7. The pthreads polyfill and work on a new project called ‘inspector’ are next on the list, with the history behind how inspector started from the concept of serialising functions/closures. Finally, we chat about the recent APCu events and additions, highlighting different forms of locking in the process - followed by what interesting topics he wishes to explore in the future.
Sound of Symfony Podcast: Episode 9 - The Past and Future of Symfony
Sound of Symfony is back from its unplanned hiatus, and launching a new format. We're also switching things up, and add two new co-hosts, Ryan Weaver and Jared Farrish. This episode's topic is "How has Symfony kept up".
Voices of the ElePHPant - Interview with Joshua Warren
This week Call Evans interviews Dallas PHP User Group member, and Magento certified developer, Joshua Warren.
Acquia Podcast: Part 3 - Drupal 8 Release Mega Episode Bonus Behind the Scenes!
Part 3 of 3 - Spend 18 minutes with Dries Buytaert and Jeffrey A. "jam" McGuire behind the scenes in Antwerp as we drive back to the dorm room where Drupal was invented, and Dries seeing it for the first time in 15 years.
Full Stack Radio Podcast Episode 30: Evan You - Diving Deep into Vue.js
In this episode, Adam talks to Evan You, the creator of Vue.js. Evan talks about his time at Google Creative Lab and the sort of work that inspired him to create Vue. He also explains in depth how data binding works in Vue, and how it's different and more performant than Angular. Additionally, Evan discusses the benefits of Vue over React, why Vue works so well in both SPAs and traditional server-side web applications, and strategies for testing Vue components.
Watch Thijs Feryn's presentation from last weeks' Varnish Summit in Amsterdam.
Voice of the ElePHPant - Periscope - Sebastian Bergmann
At PHP World 2015, we ran an experiment, we “Periscoped” all of our recordings. The audio recordings will still be released as part of the feed, however, the video will be posted here for archival purposes.
How Do I Create a Multilingual Website Using PHP?
In this week’s WebDev Q&A, John Morris answers questions on how to create a multi-lingual website using PHP, what about SEO is important to learn for developers, who you should follow for SEO, and how to create a site key for hashing passwords in PHP. Watch here.
Laravel: Lessons Learned - php[world] 2015 - Taylor Otwell
Streamed live on 19 Nov 2015. In four years, Laravel has become one of the most popular application development frameworks for PHP. In addition to the framework itself, a vibrant community has emerged including Laracon, Laracasts, Laravel Forge, Envoyer, and more. In this session, we'll discuss the history of the framework, its core philosophies, and what makes its community so passionate.
Programmer's Guide to Drupal: Principles, Practices, and Pitfalls Paperback (by Jennifer Hodgdon, published 5 Nov 2015)
If you’re a web programmer new to Drupal, this book shows you which programming techniques you can use - and which you should avoid - when building custom web applications with this content management framework.
Do you have a position that you would like to fill? PHP Weekly is ideal for targeting developers and the cost is only $50/week for an advert. Please let me know if you are interested by emailing me at [email protected]
Interesting Projects, Tools and Libraries
PHP has a huge community and many resources spread all around the Internet. This website,a simple HTML5 project, has been created in an attempt to keep the very best resources collected as simple hyperlinks in one location - PHPNexus.
This package provides a PSR-7 compatible ADR middleware.
A PHP library with commonly used code blocks.
pChart is a PHP library that will help you to create anti-aliased charts or pictures directly from your web server.
Dispatch is a PHP 5.4+ micro-framework.
phpAES is a PHP 5 (PHP 4 version now included) class implementation of 128, 192, and 256 bit AES encryption cipher.
Library for using Mink in PHPUnit tests. Supports session sharing between tests in a test case.
Provides a simple interface to work with Unicode strings in upcoming PHP7.
Faker is a PHP library that generates fake data for you.
Ratchet is a loosely coupled PHP library providing developers with tools to create real time, bi-directional applications between clients and servers over WebSockets.
Opulence is a PHP web application framework that simplifies the difficult parts of creating and maintaining a secure, scalable website.
This web application allows every body without any particular knowledge required in webmastering to create their own website.
A web-based application that produces publication-quality geographic maps.
Kahlan is a full-featured Unit & BDD test framework a la RSpec/JSpec which uses a describe-it syntax and moves testing in PHP one step forward.
An error handler framework for PHP.
Spress is a static site generator built with Symfony components
A project bringing composer support and PHP 5 standards to pChart 2.0 library.
FluidXML, a PHP library to manipulate XML documents with a concise and fluent interface.
|Please help us by clicking to our sponsor:
From our sponsors:
||DataNerd Create a free account with New Relic and get this swanky shirt for FREE!
(ads by LaunchBit)
So, how did you like this issue?
Protect your PHP code with SourceGuardian 10. Free trial.