2013年4月2日星期二

Community News: Latest PECL Releases for 04.02.2013

Latest PECL Releases:
  • zip 1.11.0
    - Added Zip64 support (large file support)
    - Added UTF-8 support for file names, file comments, and archive comments
    - Added zip_discard()
    - Added ZIP_TRUNCATE for zip_open()
    - Added zip_set_file_compression()


  • Judy 0.1.6
    - Performance improvement from GitHub pull request #10
    - Add countable spl interface from GitHub pull request #9


  • APCu 4.0.0
    All opcode caching abilities removed
    The default locking is now rwlocks
    APCu API installed in build environment
    Please see TECHNOTES/README.md


  • pthreads 0.0.43
    ::isTerminated to detect fatal errors and uncaught exceptions
    cast pthreads objects to array
    implement count on pthreads object
    implement selective inheritance (control what is available in the threaded context)
    fix crash when undefined dimension is accessed
    fix state detection when crash encountered


  • mongo 1.3.6
    ** Improvement
    * [PHP-535] - Run commands on Replication Secondaries


  • event 1.5.1
    Fix: EventBuffer::removeBuffer returned boolean instead of the number of bytes read
    Add: EventBuffer::fd property
    Change: EventBuffer class is not final any more


Community News: Packagist Latest Releases for 04.02.2013

Recent releases from the Packagist:

NetTuts.com: Taming Slim 2.0


On NetTuts.com today there's a new tutorial posted about "taming" Slim 2.0, the latest version of the popular PHP microframework. They look at application structure and share some tips to using this update.



Slim is a lightweight framework that packs a lot of punch for its tiny footprint. It has an incredible routing system, and offers a solid base to work from without getting in your way. Let me show you! But that's not to say that Slim doesn't has some issues; it's one-file setup becomes cluttered as your application grows. In this article, we'll review how to structure a Slim application to not only sustain, but improve its functionality and keep things neat and systematic.


He starts with an example of "vanilla Slim" and looks some at what's happening behind the scenes in the routing engine. They then give you a step by step installation and usage guide including updating the router to use class files. An example controller is included as well as some basic error handling using a Twig template for use across the application.

PHPMaster.com: Say Hello to Boris: A Better REPL for PHP


On PHPMaster.com today Shameer C has a new tutorial introducing you to Boris, a REPL (read-eval-print loop tool) that's a bit more enhanced than the basic PHP interactive shell.



As web developers, we know the importance of the JavaScript console provided by the browser in testing out code snippets. We don't need to write an entire HTML page and JavaScript code just to verify the functioning or logic of a small routine we wrote. Instead, we simply run the expressions in the console and immediately see the results. Similarly, a REPL (Read-Eval-Print Loop) is the console of a programming language in which we can write code line-by-line and see what it does. [...] PHP's REPL is very good in what it does, although it does have some limitations. [...] And so, Boris tries to solve these problems and other concerns as well.


He walks you through the installation (via a git clone and, later, through Composer) and shows how to run it as well as some sample output. He also shows how to make a custom command-line Boris runner and how to embed it into your application. His example of a tool that would benefit from this is a command-line web service client using Boris and Guzzle.

Rob Allen: Objects in the model layer: Part 2


Rob Allen previously posted about some of his practices around the different types of objects in the model layer of his Zend Framework 2 applications. In this latest post he follows up and shares some example code for the different types.



I previously talked about the terms I use for objects in the model layer and now it's time to put some code on those bones. Note that,as always, all code here is example code and not production-ready.


He includes sample classes related to his "books" examples - a "book" entity (with title, author, id and ISBN), a mapper object to load/save/delete the entity and a service object that provides an interface for the entity to the rest of the application.

2013年4月1日星期一

Community News: Latest PEAR Releases for 04.01.2013

Latest PEAR Releases:

Community News: Packagist Latest Releases for 04.01.2013

Recent releases from the Packagist: