- audetpascale/silex-crowdin-provider (0.0.1, 0.0.0)
Silex Provider to use Crowdin.
- brown-paper-tickets/bpt-api (v0.11.1)
A library for interacting with the Brown Paper Tickets API
Packagist Latest Releases for 01.24.2015
January 24, 2015 @ 08:07:22
Recent releases from the Packagist:0 comments voice your opinion now!
Design Patterns The Decorator Pattern
January 23, 2015 @ 12:08:21
The NetTuts.com site has continued their series looking at design patterns and how they can be used in PHP. In this new post they focus in on the Decorator pattern, most commonly used to add functionality to a existing class (to "decorate" it).
Earlier in this series we explored both the facade and adapter design patterns in this series. Using facade, we can simplify large systems, and by implementing adapter we can stay safe while working with external API and classes. Now we are going to cover the decorator design pattern, which also falls under the category of structural patterns. We can use the decorator pattern when we just want to give some added responsibility to our base class. This design pattern is a great alternative to a sub‑classing feature for extending functionality with some added advantages.
They start with a problem that needs solving - sending an email with additional content not defined in the parent class. They show how to do something similar with child classes, but quickly find a limitation. Instead, they show how to use decorator classes and a simple interface to provide interchangeable classes that augment the contents of the email body as passed in via constructor injection.
Zend Framework Blog:
Announcing the Zend Framework 3 Roadmap
January 23, 2015 @ 11:57:10
The Zend Framework project has a new post to their blog today officially announcing the roadmap for version three of the popular PHP framework.
The post lists out a few of the things involved in this roadmap including separating components into individual, versioned projects and embracing the concept and functionality of middleware. If you'd like to get involved or just find out about the latest on this upcoming version, be sure you either join the zf-contributors mailing list or come to the #zftalk.dev channel on the Freenode IRC network.
Defining Phing Tasks in PSR-0 style
January 23, 2015 @ 10:42:49
In his latest post Stephan Hochdörfer shows you how to define Phing tasks according to the PSR-0 autoloading format. Phing is a PHP-based automation tool that uses an XML configuration to execute a series of tasks.
Before anybody complains: I know that "as of 2014-10-21 PSR-0 has been marked as deprecated. PSR-4 is now recommended as an alternative." - Anyway I still think this little gem makes sense to be shared because a lot of people are probably not aware of it. I recently found out by accident that it is possible pass a task name in PSR-0 style to the "taskdef" task. In the old days you had to use the Java-like dot-style notation like this and also define the classpath to make sure the class could be loaded correct! This is ok if the task resides in the same project. If the task is located in a dependent package loaded via Composer this can get ugly.
The post is quick but provides two very handy code examples, one showing the old "dot notation" version and the other showing how to make use of the autoloader. The trick is in the classname value and using the full namespace/class name rather than the dot notation.
Release of PHP 5.4.37, 5.5.21 & 5.6.5
January 23, 2015 @ 10:03:03
The PHP.net has posted the latest releases of the language for all of the major series - PHP 5.4, 5.5 and 5.6. Each release fixes several bugs including a few security related issues:
It is strongly encouraged that you upgrade to the latest release for the major version you're using to prevent issues around these vulnerabilities. You can find these latest releases on the main downloads page or windows.php.net for the Windows binaries.
Three Devs & A Maybe Podcast:
Concurrency, Strict type-hinting and PHP 7 with Joe Watkins
January 23, 2015 @ 09:29:02
This week we are lucky to be joined by Joe Watkins, for a general catch-up on a host of PHP-related topics. We start the show off talking about his newly created blog and what drew him to start writing. Following this, we touch upon his first proposed talk on 'Parallel PHP' - hoping to resolve some of the confusion around concurrent terminology and patterns. We then mention his experience looking at YouTube Vitess (for MySQL scaling), and the pros and cons of the team deciding to use Go. His work on strict parameter type-hints is then discussed, along with how the idea has changed over time to be a little less strict. We then highlight the awesome work that Nikic has done for the PHP community, along with his most recent article on the improvements made to PHP's hash-table implementation. PHP 7 and the proposed 5.7 release are then touched upon, followed by the speedy Unicode String implementation. Finally, we discuss the common perception of fear around compiling PHP from source, along with the differences between static and shared libraries.
You can listen to this latest episode either through the in-page audio player or by downloading the mp3 of the show and listening at your leisure. If you enjoy the episode, be sure to subscribe to their feed to get the latest episodes as they're released.
Packagist Latest Releases for 01.23.2015
January 23, 2015 @ 08:07:17
Recent releases from the Packagist:0 comments voice your opinion now!
Popular Posts for the Week of 01.23.2015
January 23, 2015 @ 07:09:10
Popular posts from PHPDeveloper.org for the past week:0 comments voice your opinion now!
Conduit The Middleware for PHP
January 22, 2015 @ 10:22:16
Long back, I happened to talk with Beau Simensen about stackphp on #auraphp channel. It was hard for me to digest when I noticed it need symfony/http-kernel and its dependencies. After a few months, I started to like the middleware approach of slim framework and wanted to push it to aura. But nothing happened there. Conduit is a Middleware for PHP built by Matthew Weier O'Phinney lead of Zend framework. Conduit supports the current PSR-7 proposal. I believe like the many PSR's, PSR-7 will be a revolution in the PHP world. Conduit is really a micro framework and can grow with your project.
Hari walks you through getting the tool installed and includes an example route that just echoes "Hello conduit!"back to the user. With that in place, he shows how to add in some middlewares, chosing the Aura router and dispatcher for more complex route handling, and integrating them into a simple controller/action microframework structure.
On PHP function calls
January 22, 2015 @ 09:58:39
Julien Pauli has a new post today sharing an interesting function optimization he found using the Blackfire execution profiler.
This blog post is a technical explanation of a PHP optimization found with BlackFire profiler into a PHP script. The related post is located here : http://blog.blackfire.io/owncloud.html
He found that a replacement of a call to strlen with an isset optimized the script by about 20%. It's not typical though, he explains. He points out that the optimization worked so well because the call was part of a loop. He gets into some of the "under the covers" details of why this speed boost happens and even includes the op code output showing the difference. He then starts getting deep into the internal code for PHP and walks through each step made in the evaluation of a string's length. He finishes the post looking at isset (not technically a function) and how it handles its data checking. He also includes information about opcode caching and how to best maximize its impact.
Don't see your event here?
Let us know!
voicesoftheelephpant language configure framework opinion composer unittest community symfony release conference list api interview laravel series introduction extension podcast version
|All content copyright, 2015 PHPDeveloper.org :: firstname.lastname@example.org - Powered by the Solar PHP Framework|