PHP अगर एकाधिक मानों के लिए in_array है




arrays session (2)

कोशिश करो और देखें कि यह उपयोगी है:

if(array_intersect($result, array('abc', '123', 'def'))) {
  $this->login_session($user);
}

मेरे पास एक सरणी है जो 3 से 12 मानों के बीच कहीं भी उत्पन्न होती है, यह खाता जानकारी से सरणी बनाता है;

$result = $ad->user()->groups($user['username']);

मैं इस सरणी को कई मानों (लगभग 4 या 5) के लिए देखना चाहता हूं और यदि उनमें से कोई भी इसमें है, तो इसके अंदर क्या होता है, मैं इसे एक मूल्य के लिए बहुत आसानी से कर सकता हूं:

if (in_array("abc",$result)) {  $this->login_session($user); }

लगातार ओआरएस के अलावा इसमें कई मानों के लिए इस एक सरणी को देखने का एक आसान तरीका है:

    if (in_array("abc",$result) || in_array("123",$result) || in_array("def",$result) || in_array("456",$result) ) {  
    $this->login_session($user); 
    }

यह होना चाहिए जो आप के बाद हो:

$a = array(1,2,3,4,5);

$b = array(6,8);

function is_in_array($needle, $haystack) {

    foreach ($needle as $stack) {

        if (in_array($stack, $haystack)) {
             return true;
        }
    }

    return false;
}

var_dump(is_in_array($b, $a));

मूल रूप से सुई के माध्यम से छोरता है और घास का ढेर पर इसकी एक सरणी चलाता है। एक बार कुछ मिल गया है, तो सत्य वापस लौटाता है, और वह झूठी झलकता है।





if-statement