Diese Frage ist nicht ich versuche, eine bestimmte Zeichenfolge in einem Array zu finden. Ich würde gerne wissen, wie man am einfachsten überprüft, ob eine Zeichenfolge in einem Array existiert. Beispiel:Überprüfen Sie, ob PHP-Array eine nicht-spezifische Zeichenfolge enthält
[1,2,3] // this does NOT contain a string
[1,'two',3] // this DOES contain a string
Der beste Weg, ich geloopt durch alle Array-Elemente und Lauf is_string() auf jedem von ihnen so denken kann.
$array = [1,'two',3];
$hasString = false;
foreach($array as $item){
if (is_string($item)){
$hasString = true;
}
}
Das funktioniert, fühlt sich aber klobig an. Gibt es einen besseren Weg, dies zu tun, der keine Schleife durch das Array erfordert, oder ist das so gut wie es geht?
Nun, Sie müssen Element für Element überprüfen, bis Sie eine Zeichenfolge finden oder nicht, um festzustellen, ob eine Zeichenfolge im Array ist. Das einzige, was Sie ändern können, ist, dass Sie Ihre Schleife in Ihrem Code unterbrechen, wenn Sie eine Zeichenfolge finden, damit Sie so schnell wie möglich aufhören können. – Rizier123
array_walk, aber es ist am Ende wirklich dasselbe. –
"oder ist das so gut wie es geht" - gut genug, wenn "Pause" verwendet wird und das Array hat eine große Menge an Werten – RomanPerekhrest