PHP Digest No. 57 - interesting news, materials and tools (February 9 - 22, 2015)



    We bring to your attention the next selection with links to news and materials.

    Enjoy reading!


    News and Releases




    Php


    • must readRFC: Scalar Type Hints - The proposal by right can be called the most controversial and discussed in the history of PHP. Pascal Martin described in detail the essence of the proposal in his post. Anthony Ferrara also spoke in support of the proposal, outlining arguments for his blog. Nevertheless, the stumbling block was the issue of strict typing and a number of fair counterarguments led by Rasmus Lerdorf in the comments , Zeev Surasky in php.internals and many others .
      Voting ended with a result of 67 for and 34 against, which means that only one vote was not enough for its adoption. In this regard, the author of the proposal Andrea Faulds, announced that it is stopping work on PHPand withdraws its RFCs including Scalar Type Hints, Spaceship / Combined Comparison Operator, Void Return Type, Big Integer Support. Despite this, work on the proposal was picked up by other core contributors, which resulted in proposals from Anthony Ferrara - Scalar Type Hints v5 and from Zeev Surasky - RFC: Coercive Types for Function Arguments .
    • RFC: Combined Comparison (Spaceship) Operator - The proposal to add an operator, <=>although it was withdrawn, was later restored, accepted and merged into PHP 7.
    • RFC: Native Design by Contract support as definition - It is proposed to implement the possibilities of contract programming in the PHP language. Also a little earlier there was a similar proposal , but with the contracts indicated in the annotations.
    • The RFC: the Make empty () a Variadic - proposed to add the function of empty()the ability to transmit any number of arguments if (empty($a, $b, $c)) {}.
    • RFC: Context Sensitive Lexer - Accepting this sentence will allow the use of certain keywords as class names or methods.
    • RFC: In Operator - It is proposed to add a new operator inthat will facilitate checking for the entry of an element in a string or array: $contains = "foo" in ["foo", "bar"]; // true
    • RFC: Encapsulation - It is proposed to implement encapsulation of classes, interfaces, and traits at the namespace level. Thus, a class declared private in a namespace will only be available inside that namespace.
    • RFC: Sum Types - Starting with version 5.1, the ability to explicitly specify the type of parameters has been added in PHP, and PHP 7 provides support for specifying the types of return values. It is proposed to add the ability to specify several types for these cases, for example:
      function (array|Traversable $in) {}


    Instruments


    • Mondrian - A set of console utilities for static code analysis. Allows you to identify and refactor strongly connected code.
    • RegExpBuilder - Regular expression constructor.
    • wapmorgan / ServerStat - A utility for collecting information (cpu, mem, swap) for monitoring a server.
    • Gatekeeper - A framework-independent library that implements the RBAC system with users, groups, rights.
    • PHPBU - PHP Backup Utility - A utility for creating and synchronizing database backups and files.
    • phptrace - Extension for tracing PHP scripts and outputting a call stack.
    • MINI 2 - Skeleton application based on Slim microframework, designed for rapid prototyping.
    • Pake - Make for PHP.
    • appserver.io - A multi -threaded PHP application server for PHP.
    • PHP Face Detection - Face recognition in PHP.
    • Medio - Code generator using twig templates.
    • ePHP - PHP interpreter in pure Erlang.


    Learning Materials




    Entertaining




    If you notice a typo or mistake, please write to me in PM!

    Send link
    Quick search for all digests
    Previous issue


    Also popular now: