1--TEST-- 2Observer: Nested fibers 3--EXTENSIONS-- 4zend_test 5--INI-- 6zend_test.observer.enabled=1 7zend_test.observer.fiber_switch=1 8--FILE-- 9<?php 10 11$fiber = new Fiber(function (): void { 12 Fiber::suspend(); 13 var_dump(1); 14 15 $fiber = new Fiber(function (): void { 16 Fiber::suspend(); 17 var_dump(3); 18 Fiber::suspend(); 19 var_dump(5); 20 }); 21 22 $fiber->start(); 23 24 Fiber::suspend(); 25 var_dump(2); 26 27 $fiber->resume(); 28 29 Fiber::suspend(); 30 var_dump(4); 31 32 $fiber->resume(); 33}); 34 35$fiber->start(); 36$fiber->resume(); 37$fiber->resume(); 38$fiber->resume(); 39 40?> 41--EXPECTF-- 42<!-- init '%sobserver_fiber_03.php' --> 43<!-- switching from fiber %s to %s --> 44<init '%s'> 45<!-- init {closure}() --> 46<!-- switching from fiber %s to %s --> 47<suspend '%s'> 48<!-- switching from fiber %s to %s --> 49<resume '%s'> 50int(1) 51<!-- switching from fiber %s to %s --> 52<init '%s'> 53<!-- init {closure}() --> 54<!-- switching from fiber %s to %s --> 55<suspend '%s'> 56<!-- switching from fiber %s to %s --> 57<suspend '%s'> 58<!-- switching from fiber %s to %s --> 59<resume '%s'> 60int(2) 61<!-- switching from fiber %s to %s --> 62<resume '%s'> 63int(3) 64<!-- switching from fiber %s to %s --> 65<suspend '%s'> 66<!-- switching from fiber %s to %s --> 67<suspend '%s'> 68<!-- switching from fiber %s to %s --> 69<resume '%s'> 70int(4) 71<!-- switching from fiber %s to %s --> 72<resume '%s'> 73int(5) 74<!-- switching from fiber %s to %s --> 75<returned '%s'> 76<!-- switching from fiber %s to %s --> 77<returned '%s'> 78