Welcome back PHP fans,
When you embark on a new project, how do you decide which one to use - Laravel or WordPress? We bring you tips on how to make that decision.
Also this week, the CakePHP Conference has been announced. CakeFest takes place in Amsterdam at the end of May, and the Call for Papers is open now.
The latest PHP Round Table podcast talks about proposed new features for the next major version of PHP.
Plus, Cal Evans continues his It's The Booze Talking podcast series, discussing Entrepreneurship with a whole host of guests.
And finally, we bring you a tutorial on creating and editing excel spreadsheets in PHP.
Have a great weekend, and enjoy your read :)
Cheers
Katie and Ade |
We love our sponsors. Why not try them?
From our sponsors:
|
Find Your Top Developers See why top startups depend on Toptal to connect them with elite developers, hand-picked to match their needs. Work with top developers on an on-demand basis.
(ads by LaunchBit) |
|
Articles
You (probably) Don’t Need to Test That
Like many mentors, instilling best practices is an important part of what I do. And I encourage my mentees to follow best practices, including testing. For example, I encourage them that code isn’t done until it’s been properly tested, and that the higher the test coverage, the better the outcome overall. Yet even as an advocate for testing best practices, I’ve steadily learned that “well-tested” or even “completely tested” doesn’t always mean “100% test coverage.” And while this might seem a paradox, it’s not.
Experiment: WordCamp Incubator
WordCamps are locally-organised WordPress conferences that happen all over the world. The intention of the incubator program is to help spread WordPress to under served areas through providing more significant organisation support for a first event.
All My Projects: Asking for Open-Source Help
Here's a quick rundown of a few active projects maintained by Matt Stauffer. If you have time, he'd love for you to consider contributing to them.
Holywar: When to Use Laravel vs WordPress?
In PHP world there are two big groups of developers – those who work with Content Management Systems (WordPress, Drupal etc.) and those with frameworks (Laravel, Symfony etc.). And rarely people work with both worlds because their philosophy is fundamentally different. But when you get a new project from a client – how do you decide whether Laravel is the best choice? Or maybe simple WordPress would be enough and would save time/money? Sometimes it’s not that easy to decide. So here are my tips – questions you need to ask. |
Tutorials and Talks
Create a Custom Shipping Method in OpenCart: Part One
Although OpenCart provides a number of useful shipping methods in the core itself, there's always a chance that you'll need to create your own. On the other hand, being a web developer, you'll always try to explore the framework of your choice to see how to create your own custom stuff! In this series, we're going to create a custom shipping method module in OpenCart. It'll be a two-part series, and in the first part we'll create a back-end configuration form for our custom shipping method.
Building OctoberCMS Form Field Widgets like a Pro
Creating your business website with any CMS requires you to make the back-end user friendly, and that means making the forms meaningful and accessible. In this article, we’re going to explore OctoberCMS form widgets and create a widget called UniqueValue, which helps the user enter a unique value. This could be useful for entering emails, usernames, post slugs, etc. Let’s get started.
PHP Tutorial on Developing Applications using the Official Google Search API
Google can provide valuable information on how to find out how your site is ranking for important keywords, but the right way to do it from a Web application is to use official Google Search API instead of scrapping Google search results, which is a practice blocked by Google. In the first part of this article we learned how to use the PHP Google Custom Search API package to search using the official Google API. Read this article to learn how to configure more advanced options, as well as build a simple search application using this package.
Typed Arrays in PHP
As a community, we can only make progress when somebody pushes the boundaries. This can be done by questioning established best practices, or by coming up with new ideas. Both are the result of a trait that every good developer should have: continuously asking yourself if things can be done even better. Recently, when we reviewed code that some of our friends had written for a stealth-mode startup, we saw such a different approach that we had never seen in PHP before. We are glad that Tim Bezhashvyly agreed to share his experience with us, and write an article about it.
Foreign Data Wrappers with PostgreSQL and PHP
PostgreSQL is more than a relational database. It has many cool features. Today we’re going to play with Foreign Data Wrappers (FDW). The idea is to create a virtual table from an external datasource and use it like we use a traditional table.
Build a Custom Affiliate Link With the Amazon Product Merchandising API
In this tutorial, I will show you how to create a dedicated, reusable class in PHP that connects to the Product Merchandising API, and fetches XML data based on the name of the product and the shopping category (in this case "Movies"). At the end, we will populate that data into a small, fully customisable HTML template so that we end up with a working demo of a mini affiliate module. Let's get started.
Creating and Editing Excel Spreadsheets in PHP
To create or edit Excel spreadsheets using pure PHP, we will use the PHPExcel library, which can read and write many spreadsheet formats, including xls, xlsx, ods and csv. Before we continue, double-check that you have PHP 5.2 or higher on your server and that the following PHP extensions are installed: php_zip, php_xml and php_gd2.
References - Still Bad in PHP 7
I'm known for telling "Don't use references" (also as video) as those cause different problems (i.e. with foreach) and hurt performance. The reason for the performance loss is that references disable copy-on-write while most places in PHP assume copy-on-write. Meanwhile we have PHP 7. In PHP 7 the internal variable handling changed a lot, among other things the reference counting moved from the zval, the container representing a variable, to the actual element. So I decided to run a little test to verify my performance assumption was still valid.
Quick Tip: How to Permanently Change SQL Mode in MySQL
I was working on a legacy project recently and needed to import some data from MySQL 5.5. All the queries in the code worked perfectly in MySQL 5.5, so I assumed an upgrade to 5.7 would be seamless. Not so.
Master PHP Array Functions
You are probably using array every day as a PHP developer, because it is the default collection type of data structure in PHP. What you might not be aware of is that PHP provides tons of built-in array manipulation functions, they are more efficient compared to user land solution, because they are built into the core and designed to handle most of edge cases. In this series of tutorials, we will be going through some built-in array functions and show their possible use cases as comprehensively as we can. Hopefully this series will improve the way you deal with PHP array and make your code better. |
News and Announcements
SymfonyLive - April 5th-8th 2016, Paris
After a breathtaking SymfonyCon Paris in 2015, we find ourselves again in Paris for the SymfonyLive local conference, entirely in French, on the latest innovations and Symfony. With two days of workshops, followed by two days of the conference, tickets are on sale now.
CakeFest The CakePHP Conference - May 26th-29th 2016, Amsterdam
For 2016 we're hosting our annual CakePHP conference in Amsterdam. Covering 2 full days of workshops, showing off the latest and best practices with the framework, followed by another 2 days packed with noteworthy talks from some of the most influential members of the global community, this is a must for any CakePHP developer. The Call for Papers is now open.
Laracon - 27-29th July 2016, Louisville
Three days of learning, growing and mingling with the Laravel community. It might just be the biggest Laracon yet. Tickets are on sale now with further details to follow.
WeCamp - 23rd-27th August 2016, Island De Kluut, Biddinghuizen NL
WeCamp 2016 is 5-day coding retreat on a private island. You will be teamed up with 4 others and a personal coach to create fantastic software. In five days time, you will go from a new software concept to the working product and experience all stages of the process. Tickets are on sale now. |
Podcasts
PHP Town Hall Podcast Episode #48: Code of Conduct
User-group and meet-up organiser Jenny Wong swings by for a chat about the PHP RFC for a Code of Conduct. Whilst all three of us think a Code of Conduct is a good idea, we talk through some of the various for and against reasoning that people have, and try to outline the logical failures behind some of the FUD being spread around during this discussion.
Voices of the ElePHPant - It's The Booze Talking - Entrepreneurship
Cal Evans is joined by several guests in the latest of the It's The Booze Talking podcast series.
Three Devs and a Maybe Podcast - Process in Design with William Thomas
In this week’s episode we are very lucky to be joined by William Thomas, designer and colleague of Edd’s at MyBuilder. We start off the discussion with how he got into design - creating promotional band material and games with his brother. Following on from this we talk about his introduction to Web Design during University, exploring and pushing his understanding of markup and CSS through small web-projects.
Acquia Podcast - Drupal, meet PHP FIG: PSR What? 2016 with Lorna Mitchell
This conversation with Lorna Mitchell is another in a series of interviews Campbell Vertesi (@CampbellVertesi) and I carried out in preparation for DrupalCon Asia in Mumbai.
MageTalk Magento Podcast #80 - “Tweet a Bunch of F-Bombs to Your Church”
The guys discuss T-Swizzle, a visit to the Gates of Monrovia, Magento trademark defense, Magento Masters, and more.
PHP Round Table Podcast Episode 38 - RFC Show & Tell
New features of PHP get added via the request for comments process. We chat with a few RFC authors about what features they are proposing for the next major version of PHP.
The Laracasts Snippets Episode 15 - 10 Business Tips When Launching Your First App
So you're a developer planning to launch your first SaaS or subscription site? The business side of things get really complicated... really fast, right? In this episode, I rattle off ten tips and notes to be aware of, as you prepare for launch. We're less focused on code-specifics, and more the realities of starting and running a business.
Lately in PHP Podcast Episode 68 - Operator Overloading in PHP 7.1
Operator overloading is a feature being proposed for PHP 7.1 that will allow using regular operators, like +, -, *, /, to perform operations with class objects, using new magic methods. That was one of the main topics discussed by Manuel Lemos and Arturs Sosins in Episode 68 of the Lately in PHP podcast hangout. |
The Grid: Web Design by Artificial Intelligence
As mentioned last year, I'm working on an Artificial Intelligence that can do web design. It is called The Grid. Recently I gave a talk at Lift Conference explaining how it all works, which you can view here.
Avoid Leaving Your Users Security Warning Signs
As developers we face a myriad of security decisions when creating websites, which may disclose the level of security inside. As consumers we’ve observed these tell-tale signs that all may not be well with our data. We will cover a list of common public warning signs and alternatives that developers can take to be more secure. In this lightning talk edition, these will cover decisions inside of the password reset process, SSL content, and error messages.
Joe P Ferguson, MemphisPHP Organiser, Talks About OpenSource And Community Involvement
Joe P Ferguson is a very active and experienced personality in the PHP community. He has vast experience of working in PHP and is currently working at vector media group as a backend developer. He is also the organiser of MemphisPHP. Joe has been working in the development field for many years and is an avid fan of community building, PHP development and open source. Besides development, Joe loves reading about space and is also a frequent contributor to the open source community. Read what he had to say in this exciting interview.
Where Do I Start With My PHP Application, Tax Tips For Freelancers and More
In this episode of the John Morris Show, I cover the process I used to build my PHP applications and avoid “blank page syndrome”. I reveal my tax tips for freelancers, the art of being persistent, changes in iTunes podcasting platform that affect you and more.
My Interview with Varnish Software
On November 5th 2015 I was invited to speak at the Varnish Summit in Amsterdam. My talk was called “Varnish: where developers & sysadmins meet” and it was very well received by the audience. That same day the lovely people at Varnish Software asked me to do a quick interview with them. I didn’t mind at all and I answered a couple of simple questions. |
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
php-functional
The purpose of this library is to explore Functors, Applicative Functors and Monads in OOP PHP, and provide examples of real world use case.
humbug
Humbug is a Mutation Testing framework for PHP.
opencart
OpenCart is a free open source ecommerce platform for online merchants.
libphutil
A system for organising, loading and introspecting PHP classes and functions.
php-markdown
This is a library package that includes the PHP Markdown parser and its sibling PHP Markdown Extra with additional features.
codelite
CodeLite is an open source, free, cross platform IDE for the C/C++ programming languages which runs on all major platforms.
php-fusion
PHP-Fusion is a light-weight open-source content management system.
stripe
Stripe PHP bindings, a suite of APIs that powers commerce for businesses of all sizes.
unirest
Unirest in PHP: Simplified, lightweight HTTP client library.
uber-php
A PHP client for authenticating with Uber using OAuth 2.0 and consuming the API.
phinx
Phinx makes it ridiculously easy to manage the database migrations for your PHP app.
robo
Modern and simple PHP task runner inspired by Grunt and Rake aimed to automate common tasks.
nymph
Nymph is a real time, pubsub ORM that is easy to use in JavaScript and PHP.
redcat
Rapid Application Development relying on the best-practices with ready-to-use conventions and flexible configuration design scalable and high-performance web application.
phake
Phake is a framework for PHP that aims to provide mock objects, test doubles and method stubs.
imanee
Imanee is a simple wrapper library for Imagemagick on PHP (using the Imagick PHP extension). It provides an easy flow, and convenient methods for creating thumbnails, watermarks, text writing, animated gifs and more.
studio
This package makes it easy to develop Composer packages while using them. |
Please help us by clicking to our sponsor:
From our sponsors:
|
Find Your Top Developers See why top startups depend on Toptal to connect them with elite developers, hand-picked to match their needs. Work with top developers on an on-demand basis.
(ads by LaunchBit) |
|
So, how did you like this issue?
|
Protect your PHP code with SourceGuardian 10. Free trial.
|
|