|Hello and welcome to our latest edition.
In preparation for PHP7, we have an article looking at all you need to know about the most important resources and tips.
The Building Your Startup with PHP series continues, with this stage focusing on Scheduling a Meeting.
Also this week, for those of you who work with the Magento framework, is a tutorial about custom widget creation and development.
Plus the May issue of php[architect] magazine has been released, with this month's theme "Hunting for Clues" focusing on automated testing.
And finally, this weeks Voices of the ElePHPant interview is the latest in the "It's the Booze Talking" series, with Cal Evans talking to a whole host of PHP community members.
Have a great weekend PHP fans,
Katie and Ade
We still need your clicks :)
From our sponsors:
8 Places to Learn Coding Online for Free
Over the past year, we have not just seen version upgrades for most of the popular web development frameworks and platforms but also a lot of cross-plantations and improvisations in the basic approaches and techniques. Luckily, to keep it easy, there are free online sources for tutorials that can help you learn how to do coding.
PHP7 Resource Recap
PHP 7 is well on its way. RFCs are being implemented and polished, projects are being tested, libraries upgraded. Extensions are being modified, and the word is spreading. All that remains is getting the shared hosts on the upgrade bandwagon - arguably the most difficult part of improving the global state of PHP. In this article, we’ll take a look at some of the most important PHP7 related resources and tips you should go through in preparation for the new version.
Lessons Learned in Software Development
Henrik Warne has shared a list of heuristics and rules of thumb for software development that he has found useful over the years.
Composer & Continuous Integration
Automated testing is widely used to identify regressions in libraries and applications in different environments, and with varying configuration. No matter whether you employ Test-Driven Development, have a set of acceptance tests from Behaviour-Driven Development, or use a suite of functional tests to ensure your application works as you expect, the goal of automated testing is to quickly provide engineers with reliable information on potential problems. Continous Integration (CI) is the practice of continuously (and automatically) testing every change a developer makes. So automated tests become an integral part of the development process providing direct feedback on changes made.
Tutorials and Talks
Building Your Startup With PHP: Scheduling a Meeting
This tutorial is part of the Building Your Startup With PHP series on Tuts+. In this series, I'm guiding you through launching a startup from concept to reality using my Meeting Planner app as a real life example. Every step along the way, we'll release the Meeting Planner code as open source examples you can learn from. We'll also address startup-related business issues as they arise.
Building a Custom WordPress Theme Framework
If you’ve been involved in WordPress theme development projects, then you’ll realise that you need to reuse the same code across your project. Plus, you might even use the same starter or base theme, when starting a project for developing a theme. Through this post, I would like to throw light upon using Bootstrap and Underscores as the main components of your custom theme framework. Furthermore, we’ll cover why you need a WordPress theme framework, and the advantages of building a custom one.
Automated Testing of Drupal 8 Modules
In this article we are going to look at automated testing in Drupal 8. More specifically, we are going to write a few integration tests for some of the business logic we wrote in the previous Sitepoint articles on Drupal 8 module development. You can find the latest version of that code in this repository along with the tests we write today.
Add a MailChimp Subscribe Feature to Your Contact Form
MailChimp is a great email marketing service provider with an easy to use control panel and features, like campaign management (RSS-driven, A/B Split, Plain-text and regular), statistics, auto-responder and a complete set of list management tools. They offer different ways to place a subscriber form on your website or blog. If you would like to add the MailChimp subscribe feature to your existing contact form you need to add some custom code. This tutorial is about how to use the MailChimp subscribe feature on your existing contact form.
PHP Function Objects
It is possible to treat a class instance as a function in PHP. Quite often this is referred to as a functor even though it should really be known as a function object. This is because functions actually serve a different role in languages that support their use. The convenience of having a reusable function that can be overloaded and carry a context is something to weigh up against using functions or closures.
Browser Detection with PHP
This PHP function helps to detect which browser the current user is viewing the web page with.
Automatic PHP Code Generation with Memio
Ever thought of writing code responsible for generating certain PHP classes, methods and properties automatically? Read on to get the details on when exactly automatic code generation may be helpful and - what’s most important - how to implement it properly using the Memio library.
Creating a PHP Nexmo API Client Using Guzzle Web Service Client - Part 4
At this point in the series we have a complete PHP client for the Nexmo APIs. Hopefully I’ve been able to teach some good practices and designs in the process of developing it, but I know many of you test-driven-development advocates are probably screaming that I’ve left out the most important part: testing, and testing early. Well, in order to keep these tutorials focused I’ve saved the testing to the end, and actually when testing API clients I find it easier to write the tests afterwards, but I’ll get into that later.
Custom Widget Development in Magento
For a while now, Magento has been the benchmark set amongst the e-commerce frameworks available in the market. Credit goes to the plethora of rich built-in features it comes with and the extendability of the base framework itself to develop tailor-made extensions. In this tutorial, you'll learn the concept of widgets in Magento and how you can use them. I'll demonstrate how you can create a custom widget, which is a really powerful way to plug in extra features in Magento.
Dependency Injection with the Silex Micro-Framework
In the first installment of this series about the Silex Micro-Framework we discussed the basic setup of your project. In this installment we're going to look at dependency injection and services.
Popen For cli Commands and Pipes in PHP
Two functions in PHP, that are perfect for piping output to other commands within PHP applications, are popen and proc_open.
Composer Development with local Dependencies
Composer has undoubtly become the de facto packaging standard for PHP applications. IDEs support this and make development even more beneficial. You need some behavior for your development? Just use the provided UI or use the still fashioned terminal to download the desired dependency, composer will care about the rest and everything is up and running smoothly. What if you are developing this dependency on your own and the dependency is just a directory away? Actually, developing with local developments is kinda terrible, hence there are plenty of issues open. This post lists some workarounds and a conclusion to what needs to be changed in the composer-core to better suit this environment.
|News and Announcements
WordPress 4.2.1 Security Release
WordPress 4.2.1 is now available. This is a critical security release for all previous versions and we strongly encourage you to update your sites immediately.
PHP South Coast Conference - 18th July 2015, Portsmouth
Community members from around the world come together to learn and share information about the latest trends and technologies in professional PHP development. There will be twelve captivating talks across two tracks for the day, and an opportunity to socialise in the evening. Standard tickets are available now until the end of June.
Dutch PHP Conference - 25-27th June 2015, Amsterdam
The target audience for this conference is PHP and Mobile Web Developers of all levels, software architects, and even managers. Beginners will find many talks aimed at helping them become better developers, while more experienced developers will come away inspired to do even better, armed with knowledge about the latest tools and methodologies. Tickets are available now.
International PHP Conference Spring Edition - June 7-10th 2015, Berlin
The International PHP Conference was the world's first PHP conference and stands since more than a decade for top-notch pragmatic expertise in PHP and web technologies. At the IPC, internationally renowned experts from the PHP industry meet up with PHP users and developers from large and small companies. Early bird tickets are available until the end of today.
PHP Round Table Podcast Episode 19: The Business of PHP
We discuss freelancing as a PHP developer, managing client expectations, niches, good customer service, project scope & scope creep, hourly rates vs value based pricing, and whether or not to run a SaaS.
Laravel IO Podcast: Episode 26 - Illuminated Tesla Micro-Services
In this episode, the crew discusses the recent release of Lumen, micro-services, Laravel 5.1 event broadcasting, and their favourite cars.
Acquia Podcast: PHP Reset, PHP Renaissance: Unify Everything in PHP With Composer
It was great to get the chance to sit down and talk with Jordi Boggiano at SymfonyCon Madrid 2014. Jordi is responsible for Composer, one of the most important pieces of technology that is driving PHP interoperability and the PHP "renaissance" of the last couple of years. He's also on the Symfony2 core team.
Voices of the ElePHPant: It’s the Booze Talking - The PHP Ecosystem
This weeks podcast was recorded at last months Lone Star PHP conference, and features a long list of PHP community members talking to Cal Evans about the PHP Ecosystem.
That Podcast Episode 18: The One Where The Basket Dropped
Beau and Dave talk about podcast news, Star Wars, Mail and todo apps, putting all your eggs in one basket, AWS, PSR-7, splitting monolithic repositories for composer, boring technologies and recent projects and articles from the community.
MageTalk Magento Podcast #36 - Interview with Adam Culp
The guys sit down and interview legendary PHP developer and community organiser Adam Culp.
Run Geek Radio Podcast: Episode #2 - Approaching Speakers, New Running Shoes, Feeling Stupid, S3 Log Side Project, Consultant Travel, and Technical Debt.
In this episode we speak about PHP community and approachability of conference speakers, new running shoes and typical miles that can be run on a pair of shoes before replacing them, as well as wear patterns, feeling stupid in skills if they aren’t used often enough, new s3-logs-analyzer side project created to monitor podcast downloads (but can be used for any files on S3), typical travel as a consultant, and what is technical debt and how to tackle it as well as when an application rewrite is OK.
May 2015 php[architect] Issue Launched
“Hunting for Clues” is the theme title for this month’s issue. It focuses on automated testing and how it can help you hunt down bugs as they appear. In Michael Bodnarchuk’s Codeception: Testing for Human Beings he talks about integrating automated testing in your workflow. Xander Guzman discusses two testing and mocking libraries for PHP in Integrating Mockery and Hamcrest into a Project, and Brad Bonkoski discusses leveraging Docker for Reusable Containers for Automated Testing.
How to Insert Form Data Into a MySQL Database Using PHP
Why won’t my form data insert properly into my MySQL database? John Morris' video talks about the most common reasons why.
Review: Day Camp 4 Developers Performant PHP – PSR-7 Video
At the recent Day Camp 4 Developers day, Matthew Weier O'Phinney presented a talk on PSR-7. On the Zend Developer Zone site is a review of the day, and particularly of that presentation.
There is No AJAX - The Art of Blending DHTML, PHP and MySQL Paperback (by Schien Dong, published 25th Mar 2015)
Zend Technologies 200-550 Exam: Zend Certified PHP Developer Exam (by Bryan Jesus, published 30th March 2015)
200-550 practice exam will help you prepare for your exam in the shortest possible time. This 200-550 practice exam guarantees you will pass and receive certification. Our exams include realistic 200-550 exam questions, so you can study exactly what will be on the test and not waste your time studying unnecessary items.
To post a job advert please contact [email protected]
Interesting Projects, Tools and Libraries
A framework for PHP batch processing.
Custom PHP resource generation library for the Laravel 4 framework.
Packagist-like application for PHP Extensions, via Pickle or simple index.
Thruway is an open source client and router implementation of WAMP (Web Application Messaging Protocol), for PHP.
Custom PHP code for advanced Cascade pages.
A simple PHP client script for pocket api.
A PHP library that provides you with a simple and painless way of testing your application routes with expected HTTP Codes.
Samurai is a PHP full-stacked framework, made in Japan.
A bundle that provides simple integration of the PHP League's Flysystem using service definitions.
Easily manage forms with PHP, for WP or stand-alone applications.
A general purpose mobile backend server written in PHP.
A tool that can scan PHP vulnerabilities automatically using static analysis methods.
Open-source, complete, fast and simple framework for PHP.
A simple PHP Mailing List that stores the name and email address in a CSV file and hence requires no additional database. Comes with form validation and AJAX interface.
Curry CMS is an open-source Content Management System (CMS) for PHP 5.3.
Ajde is a web framework to kickstart your PHP projects.
Phalcon is a web framework delivered as a C extension providing high performance and lower resource consumption.
An IRC bot written in PHP thought up with modularity in mind. It is fully compatible with PHP 5.2.1 up to the very latest versions of PHP.
|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.