1--TEST-- 2Test session_set_save_handler() function: GC variation 3--EXTENSIONS-- 4session 5--INI-- 6session.gc_probability=1 7session.gc_divisor=1 8session.gc_maxlifetime=0 9session.save_path= 10session.name=PHPSESSID 11--FILE-- 12<?php 13 14ob_start(); 15 16echo "*** Testing session_set_save_handler() : variation ***\n"; 17 18function noisy_gc($maxlifetime) { 19 echo("GC [".$maxlifetime."]\n"); 20 echo gc($maxlifetime)." deleted\n"; 21 return true; 22} 23 24require_once "save_handler.inc"; 25$path = __DIR__ . '/session_set_save_handler_variation4'; 26@mkdir($path); 27session_save_path($path); 28session_set_save_handler("open", "close", "read", "write", "destroy", "noisy_gc"); 29 30session_start(); 31$_SESSION["Blah"] = "Hello World!"; 32$_SESSION["Foo"] = FALSE; 33$_SESSION["Guff"] = 1234567890; 34var_dump($_SESSION); 35$session_id = session_id(); 36var_dump(session_write_close()); 37 38session_set_save_handler("open", "close", "read", "write", "destroy", "noisy_gc"); 39session_id($session_id); 40session_start(); 41var_dump($_SESSION); 42var_dump(session_destroy()); 43 44ob_end_flush(); 45?> 46--CLEAN-- 47<?php 48$path = __DIR__ . '/session_set_save_handler_variation4'; 49rmdir($path); 50?> 51--EXPECTF-- 52*** Testing session_set_save_handler() : variation *** 53Open [%s,PHPSESSID] 54Read [%s,%s] 55GC [0] 561 deleted 57array(3) { 58 ["Blah"]=> 59 string(12) "Hello World!" 60 ["Foo"]=> 61 bool(false) 62 ["Guff"]=> 63 int(1234567890) 64} 65Write [%s,%s,Blah|s:12:"Hello World!";Foo|b:0;Guff|i:1234567890;] 66Close [%s,PHPSESSID] 67bool(true) 68Open [%s,PHPSESSID] 69Read [%s,%s] 70GC [0] 711 deleted 72array(3) { 73 ["Blah"]=> 74 string(12) "Hello World!" 75 ["Foo"]=> 76 bool(false) 77 ["Guff"]=> 78 int(1234567890) 79} 80Destroy [%s,%s] 81 82Warning: unlink(%s): No such file or directory in %s on line %d 83Close [%s,PHPSESSID] 84bool(true) 85