2016-03-09 104 views
-3

我有一個大的PHP代碼,我知道所有的代碼,除了這一部分。需要一點點解釋這個簡單的PHP代碼

Function emptyFields($ar) { 
If(!is_array($ar)) { 
    print "The argument must be an array"; 
     return false; 
    } 
foreach($ar as $key => $value) { 
    If(empty($value) { 
     print ucwords($key) . " must not be empty"; 
    return false; 
    } 
} 
    return true; 
} 

if(!emptyFields($_POST) { 
exit(); 
} 

我知道這是一個非常簡單的代碼。我在某種程度上瞭解這一點。我只需要一個詳細的解釋:

if(!emptyFields($ _ POST)){ exit(); }

謝謝你的時間。對錯誤抱歉。

+0

你指出行調用與當前請求的POST變量'emptyFields'功能。如果調用返回false,那麼php腳本的執行就會停止。 –

回答

1
if(!emptyFields($_POST) { 
    exit(); 
} 

首先這實際上是錯誤的。它應該是

if(!emptyFields($_POST)) { 
    exit(); 
} 

該函數實際上做的是接受一個參數。首先檢查該參數是否爲數組,如果不是,則返回false。

後,如果經過該陣列的每一個元素,並檢查它是否是空的,如果是的話再次返回false。 !請注意,在這裏,在php empty()將返回到int 0;

代碼的最後一部分發送到功能全局變量$ _ POST,如果返回false停止執行。我想這是一些檢查,看看用戶是否發送一些空的字段到服務器。

編輯:

!操作者是相同的== false。因此,如果emptyFields函數返回false,則將執行exit()函數。

+0

我明白這段代碼的作用。黃色部分是什麼意思?我的意思是,如果不是emptyFields的exit();這是否意味着如果函數不執行,退出? – user5237857

+0

我也解釋說。 –

+0

所以'!'運營商涉及「返回真實」。如果!true exit()。我對嗎? – user5237857