My initial use case was giving certain non-admin user access to a certain resource that is usually only accessible through the admin interface.

Instead of mucking around with special permissions I created this method to create a completely new link from the resource that I wanted to share, that I could then treat like any other route in my application. So a separate controller and separate views. In that route, you can then simply only expose the functionality that you want (make it read-only for example or only show certain fields).

The package allows the automatic creation of "shareable links" to models including functionality that allows for password protection and expiration times. A code example is included showing how to set up a link to an article entry and what the result looks like (a JSON response).

The Zend Framework blog has a new post from Matthew Weier O'Phinney focusing on another useful component of the framework, the zend-config component. This component, already in wide use across the framework, allows for flexible configurations to be defined and easily consumed for your use.

Different applications and frameworks have different opinions about how configuration should be created. Some prefer XML, others YAML, some like JSON, others like INI, and some even stick to the JavaProperties format; in Zend Framework, we tend to prefer PHP arrays, as each of the other formats essentially get compiled to PHP arrays eventually anyways.

At heart, though, we like to support developer needs, whatever they may be, and, as such, our zend-config component provides ways of working with a variety of configuration formats.

He walks you through the installation of the component (via Composer) and the dependencies it requires. The post then moves on to the use of the component to get configuration values from a single or multiple files (.php, .ini, .json, etc). It also covers the optional return of the values as objects, making them read-only, including your own configurations and using alternative parsers (like Symfony's YAML component). It ends with a look at some of the configuration options you can give the component including the addition of processors to manipulate values once they're read.

On the Symfony Finland blog they've posted a "spotlight" article highlighting several useful Symfony packages to help make your development life easier.

With the summer coming to an end there is increasing activity in the Symfony community in the form of bundles. Recently four interesting Symfony bundles have had interesting status updates: EasyLogHandler, eZ Migration Bundle, Netgen Layouts and Sylius.

The SitePoint PHP blog has posted their latest edition of their "Sourcehunt" series, highlighting interesting and useful projects around the PHP community. In this latest edition they mention a wide range of projects including:

There's one other library mentioned in the list for the Eve Online players out there showing details for its public market API. Each item on the list includes a brief description and the number of stars the repository currently has.

The SitePoint PHP blog has published the first edition of their "Sourcehunt" effort, sharing several PHP libraries to promote them and give them wider exposure to the community at large. In this post they talk about tools covering a wide range of functionality including cryptography, validation, user agent parsing and "humanizing" strings.

Last month, we introduced a new effort called Sourcehunt – a category of post intended to direct attention to less popular open source projects that show promise and need exposure. We’ve called for new submissions and accumulated an impressive list.

...and many more. A summary of the features, code and output examples are provided for most of the tools mentioned and the number of GitHub stars at the time of the posting is listed next to each library name.

On the Aura Framework blog, they continue their look ahead at the coming version of another of the framework's components, the Aura v2 Router. The Aura framework is a decoupled, modular framework that focuses on minimizing dependencies.

Lately, we’ve been going over the migration of v2 packages from v1. Today, I’ll talk about the updated Aura.Router v2 package. While not an example of extracting a new package from an existing one, it has a couple of features that other routers don’t currently have, in addition to being truly independent and completely decoupled from any other package.

They focus on some of the basics (more detailed information can be found on the package page) of the package's new features and its focus on routing rather than dispatching. Sample code is included showing it in use. The examples show basic routing, routing by server values and attaching route groups. There's also a brief section about adding REST routes via an "attachResource" method call.

Continuing their series of "sneak peeks" at the coming functionality and features of the next generation of components from the Aura framework, their blog looks at the version 2 of Aura.Web. This component has been refactored because of the creation of the Aura.Dispatcher as well.

Aura.Web v1 took the parts of Solar related to web controllers and combined them into a single independent package. [...] In the Aura.Web case, it turns out extracting Aura.Dispatcher was the key to reducing the Aura.Web package contents. With Aura.Dispatcher, any object can be a controller, since it can dispatch to any method on any object (as well as dispatching to closures). In turn, there is no more need for the Aura.Web package to provide a base controller with interfaces for various implementations.

The rest of the post explains the two halves of the new Aura.Web version - the Request and Response - and what kinds of things are included in each. It also links each to the parts of the READMEs that deal with them, providing a bit more information.

On the Aura framework blog there's a new post with a sneak peek at Aura.Dispatcher to handle the mapping between names and objects to handle the given request. The Aura framework provides high-quality, well-tested, standards-compliant, decoupled libraries that can be used in any codebase. This means you can use as much or as little of the project as you like.

In the lessons learned post, I talked about how Aura was born of the idea that we could extract independent decoupled packages from Solar, and how in doing so, we discovered that some of those extracted packages themsleves could be further split into independent pieces. Previously, I wrote about Aura.Sql-v2, Aura.Sql_Query, and Aura.Sql_Schema as extractions from a single Aura.Sql package. Today, I’m going to talk about Aura.Dispatcher as a combined extraction from three separate packages.

He starts off with a look at dispatchers in general, noting that they're usually used with request routing but the concept isn't limited to just that. He points out that CLI dispatching, as it turns out, is a lot like web request handling. The component makes routing both sides equally simple and could also be used as something like a micro-framework router. The post finishes up with this concept, talking about the evolution from micro- to full-stack framework structures and how the component could help.

On the Symfony blog today there's a new post spotlighting a site, written in Symfony, that was created to help those affected by the flooding in Nashville, Tennessee.

Though the city of Nashville was physically damaged [from the flooding], the spirit of the people was not. The local technology community quickly sprung into action to produce DonateNashville.org, a fully featured symfony 1.4 application to help organize flood relief efforts throughout the city. The project manager, Chip Hayner, took the time to answer some questions about the experience.

The site was built in a matter of days and within twenty-four hours they already had over one thousand visitors and, by the time it was all said and done, the help of 35 other people and around ten different bits of technology to get it all done. And, of course, it's all been open sourced.

Today is "Ada Lovelace Day" - a day set aside to be an international day of blogging dedicated to spotlighting those women in science and technology fields that you feel have gone above and beyond and should be recognized for it. Here's more from the official site:

Women's contributions often go unacknowledged, their innovations seldom mentioned, their faces rarely recognized. We want you to tell the world about these unsung heroines. [...] If women need female role models, let's come together to highlight the women in technology that we look up to. Let's create new role models and make sure that whenever the question "Who are the leading women in tech?" is asked, that we all have a list of candidates on the tips of our tongues.

Members of the PHP community have already started making their blog posts (and tweets) about the day - here's a list: