/ / verfügbare Werte in Array aus einer Liste von Schlüsseln PHP - PHP, Arrays

erhält die im Array vorhandenen Werte aus einer Liste der Schlüssel php - php, Arrays

Ich habe dieses Array:

$array = array("a" => "value of a", "b" => "value of b", "c" => "value of c",
"d" => "value of d");

diese liste der einzelteile:

$items = array ("a" => "value","b"=> "value","c"=> "value","d"=> "value");

Ich möchte prüfen, ob in $ array mindestens einer der Schlüssel von $ items vorhanden ist.

Ich habe es bisher ausprobiert, aber ich kann es nicht richtig machen:

if (array_key_exists("a", $array) || array_key_exists("b", $array)
|| array_key_exists("c", $array) || array_key_exists("d", $array)) {
}

jede Hilfe würde geschätzt werden.

Danke

Antworten:

7 für die Antwort № 1

Was Sie brauchen, ist eine Kreuzung der Tasten zwischen zwei Arrays. Es heißt eine nette Funktion array_intersect_key()

http://php.net/manual/en/function.array-intersect-key.php

$array = array("a" => "value of a", "b" => "value of b", "c" => "value of c", "d" => "value of d");
$items = array ("a" => "value","b"=> "value","c"=> "value","d"=> "value");

print_r(array_intersect_key($array, $items));

0 für die Antwort № 2

Ist das wonach Sie suchen?

function search_keys($needle, $haystack) {
$matches = array();
foreach($needle as $key => $value) {
if(array_key_exists($key, $haystack)) {
$maches[$key] = $haystack[$key];
}
}
return $matches;
}

$matches = seach_keys($items, $array);

0 für die Antwort № 3

Erstellen Sie eine Funktion wie folgt:

function check_keys ($items, $array){
$return = false;
foreach (array_keys($items) as $key){
if (isset($array[$key])){
$return = true;
break;
}
}
return $return;
}

Nenn es so:

// returns true or false
var_dump (check_keys ($items, $array));

0 für die Antwort № 4

Sie brauchen wahrscheinlich so etwas

$array = array("a" => "value of a", "b" => "value of b", "c" => "value of c", "d" => "value of d");
$items = array ("a" => "value","b"=> "value","c"=> "value","d"=> "value");

foreach($items as $key=>$value){
if (array_key_exists($key,$array)){

//your code

}
}