The digest of interesting news and materials from the world of PHP for the last two weeks No. 17 (05/06/2013 - 05/21/2013)
We bring to your attention the next selection with links to news and materials.
Enjoy reading!
News and Releases
- Zend Framework 2.2.0 was released - The release brought several innovations, such as dynamic DDL queries and a lot of improvements.
- Google App Engine now supports PHP - Two weeks ago it was just a rumor, but fortunately the information was confirmed. First, a post on the developers blog appeared , and then a presentation was held as part of Google I / O, a recording of which can be viewed here .
So, Google’s cloud PaaS hosting provides PHP support . The environment interpreter is based on PHP 5.4 ( phpinfo ), however access to the file system is prohibited for writing - it is supposed to use Google Cloud Storage. There are also a number of other limitations .
In addition, JetBrains immediately announced support for the Google App Engine in PHPStorm . And even there is a small example using GAE with Silex. - PHP 5.5.0RC1 Available - As promised earlier, on May 9, the PHP development team announced the release of its first release candidate. RC2 is scheduled for May 23 and then the final release.
- Releases of current branches: PHP 5.4.15 and PHP 5.3.25 - As usual, we have a number of fixes , and it is recommended that all users upgrade.
- May issue of Web & PHP magazine - The following topics are covered in this issue: Time Travel with Git; Using PHPCR ; Practical tips for creating developer communities; Data modeling; About sprint retrospectives and others.
- PuPHPet - online graphic configurator Puppet & Vagrant - An excellent tool that allows you to set all the necessary parameters of a virtual work machine: OS, installed packages, Apache, PHP, MySQL configuration, and get a ready-made config for Vagrant at the output and raise the workstation with one command. The tool code is available on GitHub .
Php
- Static code analysis tools for PHP - An excellent overview of the static analysis tools available for PHP, including the familiar Mess Detector and Code Sniffer, the lesser-known PHP Analyzer , as well as the Facebook toolkit - Pfff .
- PHP Syntax Hack - Habra-translation of the good tutorial mentioned in the previous release . A small example shows how you can change the syntax of a language with minimal C knowledge. Using a small hack of Zend Engine, the author changes the syntax of the class declaration.
- PHP created to die - A good translation of an article in which the author defends the point of view of the insolvency of PHP in the case when the script should work for a long time and continuously.
- Functional programming - how to write functional code in PHP - About functional programming in PHP has already been written here and here . Add to the list also this small post.
- Traits and Anonymous Functions in PHP. Quack quack! - An excellent hubrapost, in which the example demonstrates, in fact, the use of traits along with anonymous functions.
Learning Materials
- New features in PHP 5.5 - If you have not followed the news on PHP 5.5, then check out the slides from Julien Pauli, the release manager for this version.
- Yii 2.0 Review - The public preview of Yii 2 aroused great interest among the community, which was satisfied with a number of posts. The link is an excellent overview of new features and differences from Yii 1.1. In addition, a no less excellent Yii2 hubrapost was previously published . Acquaintance .
- Zend Framework 2 - hydrators, TableGateway models - In a post, the author writes about how, using the indicated components in ZF2, you can make models completely independent of the data source
- PHP Framework Bluz. Update - An excellent PHP microframework, which uses all the latest features of the language and takes into account the best development practices.
- Webinars by Zend - Records of past webinars are always available on the Zend website, for example, on creating service components on ZF2 .
- How to write testable and easily maintained code in PHP - A good tutorial that shows with a simple example what to avoid and vice versa, which should be used in the code in order to make it possible to write unit tests, and therefore make the code reliable.
- WebSocket (Sec-WebSocket-Version: 13) - the subtleties of implementation, in particular in PHP - Habrapost, in which the author described the problems and difficulties encountered when implementing a web socket server in PHP .
- Disclosure of information about security problems in a convenient format - Based on discussions in PHP-FIG , the author writes that security problems in components and libraries should be published as quickly as possible and in a standardized form in order to enable centralized storage of information about vulnerabilities and automate checks, for example, using SensioLabs Security Checker .
- Getting Started with PHP Zend Framework 2 for Oracle DB - This post shows how to change the application from the ZF2 tutorial to use the Oracle database as a repository.
- ZendService_Api - microframework for API requests in PHP - It is difficult to call this library a microframework, but, nevertheless, the author has created a good tool based on ZF2 components, which can be used to "communicate" with various APIs.
- Compiling PHP 5.5 from scratch - Want the latest version of PHP for your platform? Follow the instructions from the post, install the necessary dependencies and compile PHP yourself.
- Improving the security of session cookies - In a post, the author writes about several PHP configuration options (session.cookie_httponly, session.use_only_cookies, session.cookie_secure) that will help secure sessions.
- Maven and PHP - A good tutorial on using the traditional Java world build tool as applied to PHP projects. Phing , an analogue of Apache Ant, another popular Java tool, has been mentioned more than once in previous digest releases .
- Composer and PSR-0 are friends, but not relatives - An excellent post in which the author explains that there is no and should not be a direct connection between PSR-0 and Composer.
- Specification or testing: comparison of Behat and Codeception - The author writes about the difference between functional and acceptance testing, as well as why Codeception is preferred over Behat.
- Our failure as an industry - The author gives an overview of the current situation in web development, and argues that, despite the availability of the most diverse and powerful tools like never before, the industry as a whole is not very focused on developing secure solutions. And the ubiquitous responsibility shifting approach must be stopped. Be responsible.
- Slides: Behat and Fine APIs - Actually slides of a webinar about BDD and Behat (PDF) , as well as an API design report (PDF) .
- Boris - a small but reliable REPL for php - More recently, this tool was mentioned in the digest, this time a small overview in the hub site.
- Is the promised land for PHP? - Responding to the skepticism of Anthony Ferrara about PECL frameworks, the author of the post writes that PHP frameworks like Phalcon can really seriously affect the course of the “game”.
- Don't Avoid Regular Expressions - A small note on how using regular expressions can be convenient.
- Offline processing in PHP using Advanced Queuing - Tutorial on using the queue service from Oracle.
- We use grep to search for vulnerabilities in PHP code - This post demonstrates how to find simple vulnerabilities in code by searching for potentially dangerous constructs.
- Responsible Silex Controllers - The author of the post created a small component for Silex, which returns data to the client automatically in the format in which it was requested. Convenient for implementing the API.
- Studying Rails (well, Ruby) - Habra translation of an article written by an experienced PHP developer, a member of the PHP community and a speaker who was forced to learn and use Ruby on Rails for one of the projects. In his post, he, as a PHP developer, shares his experience and impressions of the new language and framework, pointing out the differences and superiorities of one or the other.
- Understanding Digest Authentication - The post describes the principles of digest authentication and provides an example implementation in PHP.
- A little more about migrations. Version for PHP - Habrapost with a tutorial on Ruckusing - a tool that implements migrations to PHP. Let me remind you that there is another good standalone implementation of migrations in PHP - Phinx .
- Google App Engine, PHP and Silex. Installing the Login Provider - Google didn’t have time to announce support for PHP in GAE, as a small example of use with the Silex microframework has arrived.
- We create a video library with PHPixie - A good tutorial on PHPixie - a quick and easy microframework.
- 5 reasons why the war of web platforms is over: PHP won with a result of 75% - says Google - In a post, the author first gives an overview of a new feature from Google, then gives 5 reasons why he considers PHP to be the winner in the “war of web platforms”. The author also observes that the dominance of PHP does not last forever, and encourages you to remember that languages are just tools, not religions.
- All slides with php [tek] 2013 - The conference season is in full swing, and more recently, a four-day conference devoted entirely to PHP was held in Chicago. By reference, slides of 42 reports presented at this conference.
Link to the previous issue.