2012-07-11 59 views
0

我讀書的地方(可能在這裏SO)有一個數組和測試設置一個內置的PHP函數是簡寫,如果在數組中的項設置,然後檢查測試它的平等。我意識到,我可以很容易地與下面的代碼片段重現,但我只是想知道是否有一個內置的方式做到這一點。沒有必要重新發明輪子,但如果這不是重塑,我想這是答案。檢查的項目是在平等

<?php 
    function item_equality(&$array, $key, $operand) { 
     return isset($array[$key]) && $array[$key] == $operand; 
    } 
?> 

回答

0

啊,這不是我尋找的功能,它是一個操作員。這是error control operator。你可以使用諸如以下的東西。

<?php 
    if (@$array[$key] == $operand) { 
     // do stuff 
    } 
?> 
0

我不知道如果這正是你心目中匹配,但可以使用得到了類似的功能:

<?php 
if (array_search($operand, $array) == $key) { 
    .... 
} 

我會謹慎使用@ - 它可能隱藏其他問題。

+0

如果有多個相同的值,則可能會失敗。對於大型陣列來說它也很慢。如果使用'FALSE'作爲鍵,它也可能不起作用。 – 2012-07-11 01:23:32

+0

所有真正的,它取決於形勢,以什麼工作。我相信你在你的問題發佈的代碼比使用@更好的解決方案,但我不是運營商的粉絲。 – 2012-07-11 01:56:13

+0

可以理解。 – 2012-07-11 02:33:10