【发布时间】:2011-08-10 11:36:44
【问题描述】:
在 PHP 中,如果我有一个函数调用另一个函数;有没有办法让被调用函数退出调用函数而不杀死整个脚本?
例如,假设我有一些类似的代码:
<?php
function funcA() {
funcB();
echo 'Hello, we finished funcB';
}
function funcB() {
echo 'This is funcB';
}
?>
<p>This is some text. After this text, I'm going to call funcA.</p>
<p><?php funcA(); ?></p>
<p>This is more text after funcA ran.</p>
不幸的是,如果我在 funcB 中发现某些东西让我想阻止 funcA 完成,我似乎不得不退出整个 PHP 脚本。有没有办法解决这个问题?
我知道我可以在 funcA() 中写一些东西来检查 funcB() 的结果,但是,就我而言,我无法控制 funcA(); 的内容;我只能控制 funcB() 的内容。
为了让这个例子更具体一点;在这个特定的例子中,我正在使用 WordPress。我正在连接the get_template_part() function,并试图阻止 WordPress 通过在我的钩子执行后调用的 locate_template() 函数实际要求/包含文件。
有人有什么建议吗?
【问题讨论】:
-
我还建议询问您想在 WP 上做什么。也许您可以使用一个函数或 wp_filter 来代替。我会在这里和 wordpress.stackexchange.com 网站上问。