File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 11language : php
22
33php :
4- - 7.4
54- 8.0
65- nightly
76
Original file line number Diff line number Diff line change @@ -190,16 +190,24 @@ static public function isInteractive(): bool
190190 /**
191191 * @param callable $callback
192192 * @param int $sleep in seconds
193+ * @param callable $onError
193194 */
194- static public function loop (callable $ callback , $ sleep = 1 /* 1 second */ ): void
195+ static public function loop (callable $ callback , $ sleep = 1 /* 1 second */ , callable $ onError = null ): void
195196 {
196197 gc_enable ();
197198
198199 $ time = 0 ;
199200
200201 while (!connection_aborted () || PHP_SAPI == "cli " ) {
201-
202- $ callback ();
202+ try {
203+ $ callback ();
204+ } catch (\Exception $ e ) {
205+ if ($ onError != null ) {
206+ $ onError ($ e );
207+ } else {
208+ throw $ e ;
209+ }
210+ }
203211
204212 sleep ($ sleep );
205213
You can’t perform that action at this time.
0 commit comments