1--TEST-- 2Test array_filter() function : usage variations - built-in functions as 'callback' argument 3--FILE-- 4<?php 5/* 6* Passing built-in functions and different language constructs as 'callback' argument 7*/ 8 9echo "*** Testing array_filter() : usage variations - built-in functions as 'callback' argument ***\n"; 10 11$input = array(0, 1, -1, 10, 100, 1000); 12 13// using built-in function 'is_int' as 'callback' 14var_dump( array_filter($input, 'is_int') ); 15 16// using built-in function 'chr' as 'callback' 17var_dump( array_filter($input, 'chr') ); 18 19// using language construct 'echo' as 'callback' 20try { 21 var_dump( array_filter($input, 'echo') ); 22} catch (TypeError $e) { 23 echo $e->getMessage(), "\n"; 24} 25 26// using language construct 'exit' as 'callback' 27try { 28 var_dump( array_filter($input, 'exit') ); 29} catch (TypeError $e) { 30 echo $e->getMessage(), "\n"; 31} 32 33echo "Done" 34?> 35--EXPECT-- 36*** Testing array_filter() : usage variations - built-in functions as 'callback' argument *** 37array(6) { 38 [0]=> 39 int(0) 40 [1]=> 41 int(1) 42 [2]=> 43 int(-1) 44 [3]=> 45 int(10) 46 [4]=> 47 int(100) 48 [5]=> 49 int(1000) 50} 51array(6) { 52 [0]=> 53 int(0) 54 [1]=> 55 int(1) 56 [2]=> 57 int(-1) 58 [3]=> 59 int(10) 60 [4]=> 61 int(100) 62 [5]=> 63 int(1000) 64} 65array_filter(): Argument #2 ($callback) must be a valid callback or null, function "echo" not found or invalid function name 66array_filter(): Argument #2 ($callback) must be a valid callback or null, function "exit" not found or invalid function name 67Done 68