Ich habe die folgende Funktion, die ich weiß, sollte TRUE zurückgeben, aber es wird nicht.Warum funktioniert diese Funktion nicht?
function myFunc($str,$array)
{
foreach($array as $k=>$v)
{
if(strtolower($v) == strtolower($str))
{
return TRUE;
}
}
return false;
}
Diese Funktion innerhalb einer Klasse in einer if-Anweisung if($this->myFunc($something, $array)){
Egal, was ich tue, es ist wahr wird bestätigt, auch wenn ich einen Text über die Rückkehr des Nutzechos verwendet wird; und das wird angezeigt. Jede Hilfe für etwas, das mir fehlt, das wäre großartig.
Es tut uns leid, die Codes nicht zu veröffentlichen.
Meine Array druckt die folgenden
Array
(
[0] => -1
[1] => Platinum
[2] => 169
)
und
$something = '-1';
ich true zurück, wenn ich versuche, -1 existiert. Das Problem, das ich nicht denke, ist, wenn der Wert im Array ist. Das Problem, das ich habe, ist, warum es nicht als wahr zurückkommen wird, es wird einen Wert zurückgeben, aber es wird nichts zurückgeben. Ich habe versucht mit in_array und die Funktion immer noch nicht als wahr zurückgegeben, weshalb ich diese Methode ausprobiert. Könnte das ein Problem mit meiner PHP-Version sein? Ich habe strtolower verwendet, weil diese Funktion auf der ganzen Seite wiederverwendet wird, um nach anderen Werten zu suchen.
Dank
Bitte geben Sie den Inhalt von $ str und $ array. :) – Teekin
Ich stimme zu Stick ein var_dump ($ str); var_dump ($ array) am Anfang der Funktion. – GWW
haben Sie debugged mit print_r auf Ihrem Array? – wajiw