<?php
/*
Plugin name: apply_filters_ref_array tests
Author: scribu
Version: 1.0
*/

// No additional arguments
function test_func_simple($value) {
	return 'pass';
}
add_filter('test_filter_simple', 'test_func_simple');

$new_val = apply_filters_ref_array('test_filter_simple', array('fail'));
var_dump('pass' == $new_val);

// An object reference as an additional argument
function test_func($value, $arg) {
	$arg->test = 'pass';

	return 'pass';
}
add_filter('test_filter', 'test_func', 10, 2);

$obj = new stdClass();
$obj->test = 'fail';

$new_val = apply_filters_ref_array('test_filter', array('fail', &$obj));
var_dump('pass' == $new_val && 'pass' == $obj->test);

