簡體   English   中英

檢查值是否存在的最簡單方法

[英]Easiest way to check for existence of a value

回顯$result->data['id']不會拋出錯誤的最簡單方法是什么?

$result = someBackendCall(1, 2, 3);
if($result && isset($result->data) && isset($result->data['id'])){
    echo $result->data['id'];
}

它有點主觀,因為有多種方法,有些人發現一種方法比另一種方法容易。 你寫的東西甚至可以被一些人認為是最簡單的。

此外,例如,您可以這樣做:

echo (isset($result->data['id'])?$result->data['id']:'');

或者,你可以把它放在一個標准的 if 塊中:

if (isset($result->data['id'])) { echo $result->data['id']; }

另一種方法是制作一個浮動的小輔助函數,您可以重用它:

function echoVar(&$input=null) { if (isset($input)) { echo $input; } }

echoVar($result->data['id']);
echoVar($result->data['name']);

我還沒有真正使用過 mini function 方法,所以我不能確定它是否真的更容易,因為它確實掩蓋了你以后閱讀它的代碼。

需要注意的一件事是,isset 可以采用完整的嵌套變量,並且它會逐步檢查。 您不需要在預期值的每個級別上連續調用三個 isset。

if (!empty($result->data['id'])) {
echo $result->data['id'];
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM