有沒有辦法在PHP中使用反射或其他方法來做到這一點?如何確定函數是否不返回任何內容?
function a{
return null;
}
function b{
}
$a = a(); // null
$b = b(); // null :(
有沒有辦法在PHP中使用反射或其他方法來做到這一點?如何確定函數是否不返回任何內容?
function a{
return null;
}
function b{
}
$a = a(); // null
$b = b(); // null :(
頭腦不回它null
,因爲它肯定會顯示沒有結果。
,而不是試圖裏面添加echo
語句具有價值,但仍然在你還是要用echo
輸出結果這兩種情況下檢查或return
吧.....
也可參考PHP。 NET如何創建一個USER DEFINE FUNCTION
是否有投票下降的理由? –
我沒有看到這個答案downvote的原因..這是合乎邏輯的,我猜測的唯一原因是因爲你已經包含一個'echo',它不會返回任何內容,只是給出輸出;所以該函數將返回一個null,即使知道輸出是給定的 –
如果你沒有明確地返回一些東西,那麼默認情況下函數將返回null
。這就是函數如何在PHP中工作,並且無法找出函數是否具有返回值。
雖然這不應該是一個問題。如果函數返回null,通常意味着什麼都沒有完成,或者沒有找到任何東西等等。
當您定義自己的函數時,您應該知道自己是否返回任何內容。
無論如何。除非你已經覆蓋了回報函數返回默認爲空
function A(){
}
function B(){
return 'Test';
}
function C(){
return;
}
function CheckValidation ($Var){
if (is_null($Var)){
return 'Sample Is Null';
}else{
return 'Sample Is Not Null and returned a value!';
}
}
echo CheckValidation(A()); // Will output: 'Sample Is Null'
echo CheckValidation(B()); // Will output: 'Sample Is Not Null and has returned a value!
echo CheckValidation(C()); // Will output: 'Sample Is Null'
我所提供的功能,你會得到,由於函數返回默認爲空,如果沒有回報是最好的..
函數默認返回'null',所以不,不是真的。 – Blender
出於興趣,你什麼時候需要這個? – Jim
一個插件系統。我想知道鉤子是否代表過濾器或事件(事件不應該返回任何東西)。我不想爲它們創建單獨的函數:P –