在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,並試圖通過執行我的鉤子後調用的locate_template()函數來阻止實際需要/包含該文件的WordPress。
有沒有人有任何建議?
我還建議問你想在WP上做什麼。也許有一個函數或wp_filter可以用來代替。我會問這裏和wordpress.stackexchange.com網站。 – 2011-04-21 17:20:48