Welcome Back PHP Fans.
This week we look at one of the hardest parts of test driven development - writing tests! This five step method makes it easy.
We also take a look at how you can start migrating Zend framework applications to Zend Expressive.
After the success of this years Laracon EU Conference, the organisers have uploaded videos of all of the presentations to their YouTube channel.
Plus the dev/hell podcast team spoke to one of the organisers of Pacific Northwest PHP, discussing her work setting up one of the newer regional conferences.
And finally, the five day Brazilian PHP Conference takes place in December, in Sao Paulo. Tickets are on sale now.
Have a great weekend,
Cheers
Katie and Ade
|
We love our sponsors. Why not try them?
From our sponsors:
|
Articles
9 Hot Tips to Enhance Your Spark Experience
A while ago, I wrote about a product I wanted to build, to allow easy remote backups for Pagekit sites. I’ve been working on it (periodically) since then, and have come across a few interesting bits of advice. I decided to use Laravel Spark as the foundation for the product, and I thought it would be helpful to share the advice. Whether you’re just starting your Spark app, or are in maintenance mode, I think you’ll find some of these tips useful!
A Review of Bulgaria PHP – Game On!
BulgariaPHP is a PHP conference consisting of one workshop day, and two talk days with two tracks each. Just like last year, this year’s conference happened in the SEC (Sofia Event Center) in Sofia, Bulgaria, on the top floor of the Paradise Mall. Unlike last year, however, this year’s edition had a theme.
On Priority
Mike Bell invited me to write something for Geek Mental Help-week. As usual, I delayed to the last moment to write that, and the Geek Mental Help-week was last week. I'm publishing this now, a couple of days too late. |
Tutorials and Talks
How to Transfer Your App to an iOS Simulator On Another Machine (using .app file and xcrun)
Here is another quick tip, we had to search around quite a bit to get this to work. I hope this helps someone in the future.
Filtering the Payment Methods by Cart Weight in OpenCart
In this article, I’m going to explain how you could filter payment methods during checkout based on the total weight of all products in the cart.
Phpseclib: Securely Communicating with Remote Servers via PHP
PHP has an SSH2 library which provides access to resources (shell, remote exec, tunneling, file transfer) on a remote machine using a secure cryptographic transport. Objectively, it is a tedious and highly frustrating task for a developer to implement it due to its overwhelming configuration options and complex API with little documentation.
Eight Knobs to Adjust and Improve Your Travis CI Builds
After having refactored several Travis CI configuration files over the last weeks, this post will provide eight adjustments or patterns immediately applicable for faster, changeable, and economic builds.
Create a PHPUnit Dashboard With New Relic
Good news, PHP developers! If you use the PHPUnit library to manage and run your unit tests, you can now send test summary results to New Relic Insights and display useful information about test successes and failures.
How to Begin Migrating From Zend Framework 2 to Zend Expressive
If you are managing one or more Zend Framework 2 applications, did you know that you can already begin porting them to Zend Expressive? In this tutorial, you will learn how you can start doing so today, using the Zend/PSR-7 bridge.
Buggy PHP Code: The 10 Most Common Mistakes PHP Developers Make
PHP makes it relatively easy to build a web-based system, which is much of the reason for its popularity. But its ease of use notwithstanding, PHP has evolved into quite a sophisticated language with many frameworks, nuances, and subtleties that can bite developers, leading to hours of hair-pulling debugging. This article highlights ten of the more common mistakes that PHP developers need to beware of.
PHP Generators – Sending “Gotchas”
If you’re reading this, you’re probably already aware of just how useful PHP’s Generators are for improving performance and/or reducing memory overheads while keeping your code clean and easy to read. We can use a simple foreach() in the main body of our code, as though iterating over an array, but without the overheads of needing to actually build an array. The Generator itself handles a lot of the boilerplate that we’d otherwise have to write, which also means that we create simpler, cleaner code.
Five Step Method to Make Test-Driven Development and Unit Testing Easy
What’s the hardest thing in test-driven development or unit testing in general? Writing tests! The syntax or the tools aren’t the problem – you can learn those enough to get started in 15 minutes. The problem is how to take some vague idea in your head about what you want to do, and turn it into something that verifies some function works… before you even wrote the damn thing!
From HTTP Messages to PSR-7: What’s It All About?
The PHP Framework Interoperability Group (PHP-FIG) has relatively recently approved another proposal, the PSR-7: HTTP Messages Interface. The document crystallises HTTP messages into 7 interfaces which a PHP library should implement if they subscribe to the specification. In PSR-7 By Example, Matthew Weier O’Phinney, editor of the PSR, gives an interesting overview of the specification. So what is it?
Installing Bourbon and Neat with Laravel Elixir
Laravel Elixir is a wrapper that simplifies working with Gulp. It makes compiling, concating, minifying and versioning your JavaScript and CSS files very fluent and easy. Bourbon is a mixin library for Sass and Neat is a Bourbon addon for creating semantic grids. In this tutorial let’s take a look at how to setup these tools with Laravel Elixir. |
News and Announcements
Forum PHP - October 27-28th 2016, Paris
The annual conference organised by the French PHP-users group, gathering all PHP and Open Source communities, pros and PHP lovers. Tickets are on sale now.
DrupalSouth - October 27-28th 2016, Queensland
DrupalSouth is the largest conference in Australia and New Zealand dedicated to the Drupal content management system. With three conference tracks focusing on Planning, Building and Inventing, tickets are on sale now.
PHP Conference Brazil - December 7-11th 2016, Sao Paulo
With hands-on courses, practical mini-courses, talks and keynotes, the Brazilian PHP Conference takes place over five days. For beginners and professionals, students, project managers and analysts alike. Tickets are on sale now.
Nomad PHP US - November 17th 2016 20:00 CST
Monkeys in the Machine, presented by Eric Mann. Sometimes, our use of PHP grows beyond the typical request/response cycle of dynamic page generation. Unfortunately, the threaded nature of PHP – and the stateless nature of the server – betrays any efforts to expand our utilisation of the server. I will walk attendees through various evolutions of a specific application from synchronous execution of loops through asynchronous execution with threading in PHP. Yes. Just like in JavaScript. Together, with this more advanced _asynchronous_ PHP we will attempt to breed virtual monkeys and finally solve the [Infinite Monkey Problem]!
Nomad PHP EU - November 17th 2016 20:00 CET
Mirror, Mirror on the Wall: Building a New PHP Reflection Library, presented by James Titcumb.
Have you ever used PHP’s built in reflection, only to find you can’t do quite what you wanted? What about finding types for parameters or properties? What about reflecting on classes that aren’t loaded, so that you can modify them directly? Better Reflection is an awesome new library that uses magical time-warp techniques* to improve on PHP’s built-in reflection by providing additional functionality. In this talk we’ll cover what reflection is all about, explore the cool features of Better Reflection already implemented, the difficulties we faced actually writing the thing, and how you can use Better Reflection in your projects to maximise your reflection-fu.
(*actual magic or time-warp not guaranteed) |
Podcasts
John Morris Podcast - Is PHP Dead?
Critics have been saying PHP was dead for years now. But, here it is… still tickin’ away… picking up market share and powering the web. But, with the rise of frameworks like NodeJS and the resurgence of Python… Has PHP seen its last days? Should you invest time learning it? Or, will it be obsolete in 5 years? I tackle that in today’s podcast. Give it a listen.
PHP Articles Report September 2016 Edition
This is the September edition of the podcast hangout recorded by Manuel Lemos and Arturs Sosins, to comment on the latest outstanding PHP Articles published recently. They commented on articles about logging events and show them with nice graphs, getting currency exchange rates for the present or any past date, getting PHP jobs in high growth companies, using error monitoring services, generating SQL to install database schemas, and several articles and videos to help developers create software product businesses.
MageTalk Magento Podcast #101 - “Beer Me an Analytics Acquisition”
RJ Metrics, Salesforce Acquisitions, Alan Storm has a Tumblr, and more.
Full Stack Radio Podcast Episode 51: Matt Wynne - Building the Right Thing with BDD
In this episode, Adam talks to Matt Wynne about Behavior Driven Development with Cucumber.
Voices of the ElePHPant - Interview with Junade Ali
Recorded recently at php[tek] 2016, Cal Evans spoke to Mastering PHP Design Patterns author Junade Ali.
Acquia Podcast - How Indigo Herbs runs (almost) everything on Drupal!
In December 2015, I sat down with Michael Hanby - Director - and Tawny Bartlett - Website Coordinator-from Indigo Herbs in Glastonbury, England and dug into their history with Drupal and just how much of their business they run with it. Tawny is really inspiring: she learned Drupal and its component and supporting technologies - Git, Javascript, PHP, and much more - on the job at Indigo. She says she's fallen in love with Drupal. I say she's become a Drupalist to reckon with and should be a role model for others. Open source, #ftw! This interview, particularly the last third, is full of some great "Why Drupal?" soundbites from a sensible business perspective. Well worth listening to!
The Five-Minute Geek Show Podcast: Episode 90 - It's OK to Specialise. We're a Laravel Shop. That's OK.
It turns out, it's perfectly OK to specialise in a certain tech. Who knew!
LaraChat Live - Episode # 15
The fifteenth episode from the Slack Channel devoted to learning about Laravel.
The Laracasts Snippets Episode 44: Energy
Lately, I've been making more of an effort to focus on my energy levels, and how to maximise them. If your energy levels aren't where they should be, then any desire you might have had to finish up that side project goes out the window. This is paramount to our financial and happiness goals, so why isn't it at the top of our priority list?
dev/hell Podcast Episode 83: Sasquatch Uses PHP
Pacific Northwest PHP co-organiser Tess Mero joins Ed and Chris to discuss her work organising one of the newer regional conferences, Joomla, and what the hell does Cisco have to offer PHP developers. |
My Favourite PhpStorm Secrets
After working for JetBrains for a year, there are few things I really wished I’d know before I started working on PhpStorm. Join me as I outline as many of my favourite hidden PhpStorm features as I can before Joe physically terminates the connection.
Jeremy Lindblom Talks About PHP Community
Jeremy Lindblom is a software engineer with more than a decade of experience in web development. He currently works for McGraw-Hill Education as a product architect and engineer. He is a keen supporter of open-source ideology and has contributed to many projects including the AWS SDK for PHP and the Guzzle HTTP library. Jeremy speaks frequently at PHP conferences and is the co-organiser of the Pacific Northwest PHP Conference (@PNWPHP) and the Arizona PHP User Group (@azPHP).
Using str_limit to Restrict a String To a Certain Length
When building for the web, there are many different ways to limit a string. For example, you could use CSS, JavaScript, or do it through PHP. Limiting strings is such a common use case that Laravel provides a simple helper to make this easy and I’ve recorded a short video to give you an example walkthrough.
The Laracon EU 2016 Videos are Now Available
This year’s Laracon EU was an amazing conference. The venue was astonishing, there were lots of cool talks and interesting people to talk to. If you’re using Laravel or PHP going to this conference really is a no brainer. If you were unable to attend or want to see the talk you missed during the conference you can now do so. The organisers have uploaded video’s of all talks to their YouTube channel.
PHP.RUHR – It’s More Than Just PHP
We recently spoke with Marc Grotholtman, organiser of the upcoming PHP.RUHR conference. With access to web developers and decision makers in Germany and around Europe, PHP.RUHR offers a full day of expertise and entertainment for all attendees.
Mastering PHP Design Patterns (by Junade Ali, published September 2016)
Develop robust and reusable code using a multitude of design patterns for PHP 7. |
Jobs
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
nano-mvp
Nano is an MVP-based framework, ideal for organising projects with virtually no learning curve and complete flexibility.
kraken-php
The first and only fault-tolerant PHP framework for distributed applications.
openapi
Generate a PHP Client API (PSR7 compatible) given a OpenApi (Swagger) specification.
php-passbook
Passbook is an application in iOS that allows users to store coupons, boarding passes, event tickets, store cards, 'generic' cards and other forms of mobile payment.
rebar
Rebar is a simple framework for quickly building PHP projects.
plop
A simple logging library for PHP.
clickatell
Standalone PHP library to integrate with the Clickatell SMS gateway.
quarx
A responsive-modular application framework built on CodeIgniter.
cygnite framework
Cygnite PHP Framework- Rapid web application development framework.
test-tools
Dependency injection and self-initialising fixtures for PHPUnit.
plan
Fast and simple validation for PHP.
nibbleblog
A powerful engine for creating blogs, all you need is PHP to work. |
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.
|
|