News Feed
Sections




News Archive
feed this:

Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Matthias Noback:
Unnecessary contrapositions in the new "Symfony Best Practices"
October 15, 2014 @ 12:29:31

Matthias Noback has a new post today with some of his thoughts about the recently released Symfony Best Practices book and some "unnecessary contrapositions" and things he sees that could help improve the perception of the book and the advice it provides.

Of course I'm going to write something about the new Symfony Best Practices book that was written by Fabien Potencier, Ryan Weaver and Javier Eguiluz. It got a lot of negative responses, at least in my Twitter feed, and I think it's a good idea to read Richard Miller's post for some suggestions on how to deal with an "early preview release" like this and how we can be a bit more positive about it.

He emphasizes the "staying positive" aspect of his message and points out that while some of the suggestions are good, they may not be the "best" in all circumstances. His main point, though, is that he thinks the way the book was introduced (the wording of the post) was unfortunate and cast a more negative light on the work done previously around Symfony best practices and advice. He recommends changing things around a bit in both the messaging and the book itself to take the focus away from the "you're doing it wrong" and encourage people to do it the way they recommend, casting a more positive spin on it all.

0 comments voice your opinion now!
symfony bestpractices guide reaction opinion positive

Link: http://php-and-symfony.matthiasnoback.nl/2014/10/unnecessary-contrapositions-in-the-new-symfony-best-practices/

Joshua Thijssen:
Symfony2 logging out
October 10, 2014 @ 10:51:03

In this new post to his site Joshua Thijssen talks about something that's usually considered a common task and might be overlooked when it comes to security: logging out (specifically in Symfony-based applications).

One of the "golden rules" of symfony2 is to never hardcode urls or paths inside your code or templates. And letting symfony deal with the generation of your urls and paths makes your life a lot easier as a developer. But one of the things I see regularly is that people are still hardcoding their logout urls like using "/logout". But logging out is actually a bit more complex than it might seem, and using a simple /logout might work for most cases, but there are better ways to deal with this.

To give some context, he starts with an overview of the Security component of the Symfony framework, mentioning how it can be configured with different "secure" areas and how they handle the user authentication. He includes an example configuration of one of these "firewalls" in a YAML document with three different sections: "dev", "superadminstuff" and "main". He explains what each of these sections are configuring and how they will react when the user visits them. He talks some about the "logout: true" handling and what kind of defaults are also included when it's called. He suggests that, instead of a hard-coded "logout" URL in your application, you make use of the "logout_url" and "logout_path" functions to create the link for you, making it consistent across the application and easier to configure.

0 comments voice your opinion now!
symfony logout security user login component link

Link: https://www.adayinthelifeof.nl/2014/10/06/symfony2-logging-out/

Symfony Blog:
Introducing the Official Symfony Best Practices
October 09, 2014 @ 11:53:51

On the Symfony blog today they've officially announced the Symfony Best Practices initiative that's being ramped up to help provide a solid resource for Symfony developers and guide them towards more correct development within the framework (and its components).

Since the publication of Symfony 2.0, the Symfony Community has created an unofficial set of recommendations for developing Symfony2 applications. Unfortunately, a lot of these recommendations are in fact wrong. They unnecessarily overcomplicate things and don't follow the original pragmatic philosophy of Symfony.

This guide, soon to be published at http://symfony.com/best-practices will share 31 of the best practices gathered by Fabien Potencier, Ryan Weaver and Javier Eguiluz from their own experience and the practices the community has found along the way. The things in this guide will be optional, not required, to make Symfony-based applications work, so don't worry if you're not following them exactly.

0 comments voice your opinion now!
symfony bestpractices guide official fabienpotencier ryanweaver javiereguiluz

Link: http://symfony.com/blog/introducing-the-official-symfony-best-practices

SitePoint PHP Blog:
Build your own PHP Framework with Symfony Components
October 03, 2014 @ 09:12:05

On the SitePoint PHP blog today there's a post introducing you to the concept of building a framework with Symfony components, using only the ones you need from the Symfony framework ecosystem to create a customized framework to fit your needs.

You've probably met Symfony in your PHP career - or have at least heard of it. What you may not know is that Symfony is, at its core, composed of separate libraries called components, which can be reused in any PHP application. For example, the popular PHP framework Laravel was developed using several Symfony components we will also be using in this tutorial. The next version of the popular CMS Drupal is also being built on top of some of the main Symfony components. We'll see how to build a minimal PHP framework using these components, and how they can interact to create a basic structure for any web application.

He covers some of the main parts of the framework, how to grab the components that will help with some of the common functionality and integrating them to work together. He uses the HttpFoundation, HttpKernel, Routing and EventDispatcher (along with their own dependencies) to create a simple example that will respond to a few different route requests.

0 comments voice your opinion now!
framework components symfony tutorial introduction custom

Link: http://www.sitepoint.com/build-php-framework-symfony-components/

Mathias Noback:
Semantic versioning for bundles
September 30, 2014 @ 11:26:40

In a recent post to his site Mathias Noback looks at the use of semantic versioning, introducing some of its basic concepts and how it can relate to the work done in Symfony bundles.

Semantic versioning is an agreement between the user of a package and its maintainer. The maintainer should be able to fix bugs, add new features or completely change the API of the software they provide. At the same time, the user of the package should not be forced to make changes to their own project whenever a package maintainer decides to release a new version.

He breaks down what the version numbering represents (major, minor and patch versions) and how they work with Symfony's "semver" to handle issues that come with backwards compatibility concerns. He then looks at a few things to consider when versioning your bundles and how it relates to the underlying libraries it might use:

  • Bundles expose an API themselves
  • The API of a bundle leads a life on its own
  • A library may contain bugs that are totally unrelated to the bundle
  • A library may contain features that are not implemented by the bundle

Ultimately, he suggests that bundle versioning should have nothing to do with the underlying libraries/packages. It's his opinion that they should only be reversioned when there is a change in the actual bundle.

0 comments voice your opinion now!
semantic versioning symfony bundle package library opinion

Link: http://php-and-symfony.matthiasnoback.nl/2014/09/semantic-versioning-for-bundles/

Mattias Noback:
Backwards compatible bundle releases
September 29, 2014 @ 12:31:09

In his latest post Matthias Noback talks about a problem common to Symfony bundles (and, well, software in general) - dealing with backwards compatibility and breaks that could be introduced with new changes.

With a new bundle release you may want to rename services or parameters, make a service private, change some constructor arguments, change the structure of the bundle configuration, etc. Some of these changes may acually be backwards incompatible changes for the users of that bundle. Luckily, the Symfony DependenyInjection component and Config component both provide you with some options to prevent such backwards compatibility (BC) breaks.

He breaks the post up into a few different kinds of backwards compatibility breaks that could happen and code examples of each:

  • Renaming things
  • Changing visibility
  • Changing values

Each topic also includes methods for preventing issues with older users who maybe aren't using the new features. This includes things like sane default values for new settings, renaming services and creating new extensions for working with new properties.

0 comments voice your opinion now!
symfony bundle backwards compatibility changes prevent rename visibility values

Link: http://php-and-symfony.matthiasnoback.nl/2014/09/backwards-compatible-bundle-releases/

Gonzalo Ayuso:
Building a Pimple/Container from a YAML file
September 29, 2014 @ 10:54:10

In a recent post to his site Gonzalo Ayuso shows how to create a Pimple container (a dependency injection container) from a YAML configuration definition using a simple handler already included in Pimple.

[In a conversation with Máximo Cuadros about Dependency Injection Containers] I said that I prefer Symfony´s DIC instead of Pimple, mainly because its configuration with YAML (or even xml) files. But In fact we can customise Pimple/Containers with YAML files in a similar way than we do it with Symfony's DIC. In this example we're going to see one way to do it.

While Pimple does come with the "Container" functionality to make this happen, Gonzalo points out that using it this way violates several of the SOLID design principles. Instead, he offers an alternate solution - using the Config component from Symfony to handle the creation of the container using an already established YAML format. He includes an example YAML configuration structure, the matching Pimple code for it and a code sample showing how the YAML is parsed into the same result. You can find the code on his GitHub account if you're interested in the full structure.

0 comments voice your opinion now!
pimple symfony container solid config yaml dependencyinjection

Link: http://gonzalo123.com/2014/09/29/building-a-pimplecontainer-from-a-yaml-file/

SitePoint PHP Blog:
How to Deploy Symfony Apps with Capifony
September 25, 2014 @ 10:55:27

The SitePoint PHP blog has a tutorial today showing you how you can use the popular Capistrano tool to deploy Symfony-based applications. More specifically, it's focused in on one tool, Calpifony, that's a bit more tailored to what a Symfony deployment needs.

Say you have a Symfony application. At some point, you would like to deploy it to your server and show it to the world. Of course, you can do it all manually, but these days you can also choose to use a tool like Capifony. If you have developed Ruby applications in the past, you are perhaps familiar with Capistrano. Capistrano is a tool to deploy your Ruby application to your server. Capifony has been created on top of Capistrano, and is basically a collection of deployment recipes. In this article, we are going to deploy a Symfony application to a server with Capifony.

He starts off with a section giving an overview of how the Capifony tool works and how important the directory structure is. He then guides you through the installation of the tool and configuring your first simple project. He includes an example "deply.rb" configuration and walks through each piece, describing what it does and how to add some additional commands to the list. The post ends with the full updates configuration that makes the connection to the server, downloads a copy of a Git repository and executes Assetic and Bower commands on build.

0 comments voice your opinion now!
tutorial capifony symfony deployment capistrano introduction install configure

Link: http://www.sitepoint.com/deploy-symfony-apps-capifony/

Sound of Symfony:
Episode 4 - Best Practices
September 25, 2014 @ 09:32:38

The Sound of Symfony podcast has released their latest episode (#4) today focusing on Best Practices. Join hosts Magnus Nordlander and Tobias Nyholm and guest Kris Wallsmith ask they talk about some good practices to follow in Symfony-based applications.

In this episode we talk to Kris Wallsmith about best practices for your Symfony app. If you've ever wondered which code belongs in your controller, how to write your model, or how to separate your code into bundles, this is the segment for you. It also features the return of Magnus' favorite segment, the hidden gems section, and a discussion on news and a rundown of community updates.

Other topics mentioned include the walking trip to SymfonyCon, a few "hidden gems" and community updates about Symfony Live London 2014 and Symfony Live New York 2014. You can listen to this latest episode either through the in-page audio player or by downloading the mp3 for listening offline. If you enjoy the show, be sure to subscribe to their feed for more great content.

0 comments voice your opinion now!
soundofsymfony podcast ep4 bestpractices symfony framework

Link: http://www.soundofsymfony.com/episode/episode-4/

Symfony Blog:
Thelia, a Symfony-based e-commerce solution
September 17, 2014 @ 11:16:48

On the Symfony blog today they've posted an interview with Manuel Raynaud, the lead developer on the Thelia project. Thelia is a Symfony-based e-commerce solution that is free to download and use (and can easily be installed via Composer).

An interview with Manuel Raynaud, lead developer of Thelia, a Symfony-based e-commerce solution. Introducing the new Thelia 2 and how it's in perfect harmony with Symfony.

The interview starts with a brief introduction of Manuel and a quick overview of what the Thelia project is about and the current state of things. They get into some of the story behind Thelia and what parts of Symfony (components) it uses behind the scenes. They finish out the interview talking about some of the advantages the project offers and challenges they've faced along the way. There's also a bit about how Thelia is involved in the Symfony events and community.

0 comments voice your opinion now!
interview community symfony thelia ecommerce manuelraynaud

Link: http://symfony.com/blog/thelia-a-symfony-based-e-commerce-solution


Community Events





Don't see your event here?
Let us know!


community introduction framework laravel series bugfix library install deployment language package release version opinion api interview symfony zendserver podcast tips

All content copyright, 2014 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework