Se si sta solo cercando di determinare quale aghi esiste nel pagliaio, suggerisco la funzione array_intersect
.
documentazione dal sito PHP.net
<?php
$array1 = array("a" => "green", "red", "blue");
$array2 = array("b" => "green", "yellow", "red");
$result = array_intersect($array1, $array2);
print_r($result);
?>
The above example will output:
Array
(
[a] => green
[0] => red
)
Fondamentalmente, questo si tradurrà in una matrice che mostra tutti i valori che compaiono in entrambi gli array. Nel tuo caso, il tuo codice restituisce true se viene trovato un ago. Il codice seguente lo farà usando la funzione array_intersect
, anche se è più semplice di quella di Charles è discutibile.
if(sizeof(array_intersect($hackstack, $arrayNeedles)) > 0)
return true;
else
return false;
Anche in questo caso, io non sono sicuro di quello che il codice sta cercando di fare, altro che ritornare vero se esiste qualsiasi ago. Se riesci a fornire un contesto su ciò che vuoi ottenere, potrebbe esserci un modo migliore.
Spero che questo aiuti.
fonte
2011-12-21 22:34:18
cambiamento 'strstr ($ pagliaio, $ ago)' a 'strpos ($ pagliaio, $ ago) == false' ... –