如何为所有功能设置 tick_func
function tick_func(){ //for all func,
sleep(1);
}
//sample function
call_any_func(); // this will wait 1 sec.
call_another_func(); // this will wait 1 sec.
答案 0 :(得分:4)
除了这篇文章之外你还有new post,我想我得到你想做的事:在整个剧本中其他所有函数之前或之后运行一个函数。
PHP不提供此功能。您必须在要影响的任何功能的开头或结尾处手动键入此函数调用。
<?php
function some_func_sleep() {
sleep(1);
}
function call_any_func() {
some_func_sleep();
// whatever you actually want it to do
}
function call_another_func() {
some_func_sleep();
// whatever other thing you want it to do
}
call_any_func();
call_another_func();
塔达。它并不完美,但很明显。
答案 1 :(得分:4)
根据您提供的信息,我所能指出的只是register_tick_function()可能是您要做的事情:
declare(ticks=1);
// using a function as the callback
register_tick_function('all_func_sleep', true);
// your code here...
unregister_tick_function('all_func_sleep');
正如Matchu在下面所说,这将在每个语句之后调用,而不是在函数调用之后,但是如果你最小化寄存器...和unregister_tick_function()调用之间的代码量,你可以近似这个功能。