我要尋找一個班輪PHP
語法,讓我做到這一點:做點什麼,回報或繼續,PHP的一行語法
function printMsg($do_print, $msg) {
if ($do_print) {
echo "$msg\n";
}
return $do_print;
}
function test() {
printMsg(false, 'foo') and return; <== need a one liner for this
printMsg(true, 'bar') and return;
}
echo "before"; // before
test(); // bar
echo "after"; // after
到目前爲止,我有最好的是要做到:
if (printMsg(false, 'foo')) return;
的問題是,在重新格式化我的代碼我IDE
(Netbeans的),把它放在2號線。這並不顯着,但我有一段代碼,有很多這樣的調用,並且有一行代碼保留在1行上會使它更加簡潔/易讀。
在我想要實現的功能中,PHP中是否還有其他單行語法?
讓我們來討論你的meta問題!你不存在某個命令必須停留在一行的問題。你更可能會遇到如何表達你真正想做的事情的問題 - 而這正是我目前的陳述所不能理解的。我喜歡'WTF,如果你知道你不想輸出和返回,那麼不要在'test()'函數的第一行調用任何東西。' – Sven
所以基本上你想要'return(2)'這樣的東西在調用堆棧上返回2個層次,而不是通常的1? –
就是這樣。我完全沒有意識到我可以做到這一點,所以我想出了這種單線的選擇。 – Max