News Feed
Jobs Feed
Sections



Recent Jobs

News Archive
feed this:

Jake Smith's Blog:
Callback Filter Iterator in PHP 5.3/5.4
December 02, 2011 @ 08:44:34

Jake Smith has a new post to his blog today about a feature included in PHP's Standard PHP Library that you might have overlooked - the FilterIterator's callback functionality.

The Filter Iterator is probably my second favorite iterator, next to Directory Iterator. There are many great use cases for the Filter Iterator, and when you do filter the original data is left untouched. A Filter Iterator is really simple to use, create a class that extends FilterIterator and adjust the accept method to meet your criteria. This is great and all, but having the ability to create filter iterators on the fly, ones that won't be used application wide, without having to create a class is even better.

He includes a bit of code defining a FilterCallbackIterator class with a "callback" parameter passed into the constructor (in his case, a closure). Also included is some sample code of it in use - handling an array (well, ArrayIterator) with a simple true/false check on the current array value. You can find out more about this functionality in the PHP manual.

0 comments voice your opinion now!
callback filter iterator spl tutorial closure



Bertrand Mansion's Blog:
Twitter Bootstrap and the QuickForm2 Callback Renderer
September 26, 2011 @ 12:23:41

In a new post Bertrand Mansion shows how he combined the versatility of the PEAR QuickForm2 package and the Bootstrap project from Twitter to quickly make a form using the project's styling (CSS).

I don't know about you, but for me building HTML Forms and styling HTML Forms are maybe the most boring things in web development. It's repetitive and takes a lot of time to do things correctly. That's why tools like Twitter's Bootstrap and PEAR's HTML_QuickForm2 can help with this part of our job. Wouldn't it be nice to have QuickForm2 generate a markup compatible with Bootstrap CSS, so that you could get a nice looking form without to much efforts? Well, that's what I plan to do here.

He starts by creating a simple QuickForm2 form with no renderers attached (no pre-defined styles) and a custom render callback that wraps the items in "div" tags with the correct styles. There's also a custom renderer included for grouping items with additional styling attached.

0 comments voice your opinion now!
twitter bootstrap pear quickform2 callback style render css


Gonzalo Ayuso's Blog:
Building a small microframework with PHP
August 23, 2011 @ 09:48:27

In investigating microframeworks and some of the offerings out there Gonzalo Ayuso has done a little exploring of his own. He's worked up a basic microframework and shared it in a new post as a sort of academic exercise.

Nowadays microframewors are very popular. Since Blake Mizerany created Sinatra (Ruby), we have a lot of Sinatra clones in PHP world. Probably the most famous (and a really good one) is Silex. But we also have several ones, such as Limonade, GluePHP and Slim. Those frameworks are similar.

He looks at how several of these frameworks handle routing and setup, mostly using the closures/anonymous function callbacks available in PHP 5.3. His simple example framework does some basic URI handling to find the requested module, class and function (action) to call. You can even define the output format from options like json, txt, css, js and jsonp. A sample "controller" is included with a "Hello world" and there's a mention of some other options he's exploring including Twig and Assetic integration.

2 comments voice your opinion now!
microframework exercise routing callback anonymous function


Lorna Mitchell's Blog:
Callbacks in PHP
February 14, 2011 @ 13:41:28

Lorna Mitchell has a new post to her blog today looking at a very handy piece of PHP functionality sprinkled around in different functions - using callbacks to handle complicated processing.

Recently I was working on something and I wanted to call an object method as a callback, but got confused when I realised the method had been caused statically. This was caused by my inability to RTFM and I wondered how I'd come so far without actually coming across the many and varied things you can pass into any place a callback is needed.

Besides the normal callback functions you can put in something like call_user_func, she also mentions something a bit more powerful - passing in an array that contains a pointer to an object and a method inside it. This ability allows you to keep your OOP encapsulation intact without having to make global functions. In PHP 5.3, there's even some of the PHP functions that use call backs that will allow you to use closures/anonymous functions without even having to make a separate function.

0 comments voice your opinion now!
callback calluserfunc function object closure anonymous


DZone.com:
Reuse your closures with functors
December 29, 2010 @ 10:50:19

On DZone.com there's a new tutorial from Giorgio Sironi about reusing closures with the help of functors (a special kind of object instancing done in PHP with the help of __invoke).

I like PHP closures and their superset, anomyous functions, as they implement the Command pattern very well when used correctly. However I feel that sometimes they are: difficult to reuse and difficult to force contracts on. [...] What if we wanted instead, a closure which we can instance even more than one time (maybe with different variables), and that we could type hint?

He shows how to make this possible with a functor created using the __invoke magic method of PHP to handle the request to an object like a function. He includes some sample code to show it in action - a basic callback (SquareCallback) and how it compares to calling a normal closure. It also shows something a bit more technical, an "AdderCallback" class that can be defined as a type hint on a function.

0 comments voice your opinion now!
closure functor invoke snippet example callback typehint


phpRiot.com:
Using Callback Functions in PHP
November 19, 2010 @ 09:50:35

On phpRiot.com today there's a new tutorial posted by Quentin Zervaas showing you how to use the callback functions in PHP (with examples using call_user_func).

A commonly used technique when programming is to use callbacks. A callback is a piece of code that is passed to a function that is later executed by that function. In this article I will show you how to define and call callbacks in PHP, as well as a practical example of how callbacks can be useful.

He starts with a normal script flow that has to wait until everything's done in order to handle the results. He then compares this to using a callback method that can be executed during each iteration of the script, reducing the amount of processing that has to be done after the fact. Code snippets are included of an example that pulls from a remote RSS feed and loops through the results.

0 comments voice your opinion now!
callback tutorial function example


SitePoint PHP Blog:
How to Create Your Own WordPress Shortcodes
November 11, 2010 @ 08:26:36

On the SitePoint PHP blog today there's a new post showing how how to make your own "short code" system that allows for custom function execution.

WordPress doesn't normally allow you to add PHP code to pages or posts. That's for the best: you don't want clients to discover the power of the unlink function! However, you can create custom functions which are executed when a shortcode is encountered within the post text.

There's two code snippets included - one showing a simple function call, "Hello World" style, and another version that lets you define parameters to feed into the method. There's also a simple example of how you could allow them to include CSS styling into the code example too.

1 comment voice your opinion now!
wordpress shortcode tutorial function callback


TigerFish Interactive:
Drupal 6 Posting AJAX callbacks in SimpleTest
July 29, 2010 @ 11:08:07

On the TigerFish Interactive blog today there's a new post for Drupal-ers out there about using the SimpleTest plugin for Drupal 6 to run automated tests against Ajax callbacks.

In Drupal 6's excellent SimpleTest module, a method called drupalPost() allows you to simulate a button press on a form by taking the form's data and using HTTP POST to submit it. But what if you want to POST data to an AJAX callback URL? By default, SimpleTest checks which submit button you have pressed, but of course, when POSTing using AJAX, you probably won't have pressed a button!

After doing some searching on a problem he had - submitting a form without the actual form on a page - he decided the best solution was to create a base class that inherits from DrupalWebTestCase. This base class allowed him to make a POST request (via curl) to the page and simulate a form request. The code for the method is included.

0 comments voice your opinion now!
drupal ajax simpletest callback


Giorgio Sironi's Blog:
Stop writing foreach() cycles
February 18, 2010 @ 10:58:28

Giorgio Sironi has a recommendation for developers out there - stop writing foreach loops, there's something better in PHP 5.3+ - closures

There are some array functions which have already been supported at least from Php 4, and that take as an argument a callback whose formal parameters have to be one or two elements of the array. [...] In Php 5.3, callbacks may also be specified as anonymous functions, defined in the middle of other code. These closures are first class citizens, and are treated as you would treat a variable, by passing it around as a method parameter.

He includes some code examples to show you how closures used in callbacks can replace a lot of the other looping normally done by a separate bit of code. Most of the instances are in array functions that take in a callback and apply it to each element in the array (some recursively). The last example shows how to use it in a usort call to make the custom sorting of an array simpler.

0 comments voice your opinion now!
foreach closure tutorial array callback


ProDevTips.com:
This is what's wrong with PHP
October 01, 2009 @ 08:10:43

On the ProDevTips blog today Henrik describes a situation where he "tried to be clever" with the array_map and array_filter functions and some of the confusion in their usage.

I knew array_filter existed and what it was all about since before, however I started working with something requiring array_map first, all well and OK, array_map looks like this: array_map('callback', Array). So then I assumed I could use array_filter in the same fashion, big mistake.

He was caught by the parameter order difference between the two and problems with how the callbacks worked. In the end, he he spent an hour to create a function to search an array for a partial match and didn't even end up using the array functions (opting for calls to stripos instead).

0 comments voice your opinion now!
wrong parameter order callback



Community Events





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


test introduction symfony2 custom community conference framework phpunit development interview package api unittest podcast release series manifesto opinion language application

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