Ich versuche strposa
zu verwenden, um einen Teil einer Schleife zu stoppen, die continue
verwendet, wenn es eine Übereinstimmung in dem Array findet. Das Problem ist, wenn es einen Bezug zu einer Ziffer in dem Code findet, der gerade endet, anstatt mit der tatsächlichen Eingabe übereinzustimmen.PHP Strposa einstellige zwei- und dreistellige Ziffern
I.e. Wenn es 6
in 163
findet, stoppt es. Gibt es sowieso, um es spezifisch zu machen.
function strposa($haystack, $needle, $offset = 0) {
if (!is_array($needle)) {
$needle = array($needle);
}
foreach ($needle as $query) {
if (stripos($haystack, $query, $offset) !== false) {
return true; // stop on first true result
}
}
return false;
}
$StaffGroups = array (0 => '76', '6', '13', '16', '154', '69');
$ServerGroups = explode(",", $Info['client_servergroups']);
if (strposa($ServerGroups, $StaffGroups, 1)) {
echo "User is staff";
Continue;
} else {
echo "User is not staff";
}
Die Arrays wie folgt aussehen, wenn Sie fertig:
$StaffGroups([0] => 76 [1] => 6 [2] => 13 [3] => 16 [4] => 154 [5] => 69)
$ServerGroups ([0] => 69 [1] => 163)
jede mögliche Hilfe schätzen würde, wirklich im Moment stecken! Entschuldigung, wenn ich etwas beantwortet habe, das bereits beantwortet wurde, aber mir fällt keine gute Möglichkeit ein, danach zu suchen.
Wie wollen Sie * die Ausgabe aussehen? –
Ich bin nicht wirklich sicher, ich brauche es nur, um eine 6 als 6 zu behandeln, anstatt die 6 in 163 zu markieren, damit ich diesen Code beenden kann. – Patrick
Was ist die Frage/Problem jetzt? – Rizier123