有什麼區別,哪個更好?如何在PHP中正確使用isset函數?
這一個:
if(isset($_POST['name'])){
}
或者這一個:
$name = $_POST['name'];
if(isset($name)){
}
我想知道,如果有兩個代碼之間的差異,這是更有效地使用。先謝謝你!
有什麼區別,哪個更好?如何在PHP中正確使用isset函數?
這一個:
if(isset($_POST['name'])){
}
或者這一個:
$name = $_POST['name'];
if(isset($name)){
}
我想知道,如果有兩個代碼之間的差異,這是更有效地使用。先謝謝你!
嗨第一個是正確的
if(isset($_POST['name'])){
}
這將檢查$_POST['name']
設置與否。
但
$name = $_POST['name'];
if(isset($name)){
}
這將檢查$name
設置與否。如果因爲$_POST['name']
是否具有價值或者您沒有聲明$name
而進入內部。所以這會給出錯誤的結果
非常感謝! – Jjjjjjjjjj
@Jjjjjjjjjj歡迎:) – user1234
@Jjjjjjjjjj如果一個答案解決了你的問題,不要忘記upvote並選擇它。 – BeetleJuice
這兩個代碼會做同樣的事情。他們都會檢查是否設置了變量。
在這兩種情況下,您將檢查是否設置了$_POST['name']
。如果你正在尋找效率,你應該使用第一個,因爲創建新的變量和處理數據將始終使用更多的資源。
不,他們不會,如果變量未定義,後者將返回一個錯誤。 – 2016-08-02 05:18:38
當然,但這不是他的問題的重點。他想知道這兩個條件之間有什麼區別,哪一個更有效。實際上,是的,他們也會這樣做:檢查是否設置了$ _POST ['name']。 – tomfl
你顯然有一個不同於宇宙其他部分的「相同」的定義。 – 2016-08-02 05:34:51
更好:
$name = isset($_POST['name']) ? $_POST['name'] : 'empty';
第一個是正確的,後者將導致一個錯誤,如果它不是POST陣列 – RamRaider
定義謝謝@RamRaider。現在我明白了。非常感謝。 – Jjjjjjjjjj