Ich muss mit Array-Liste auswählen. %code% enthält:
%Vor%print_r ($ array_name);
%Vor%
Warum funktioniert das nicht? Ich suche ein anderes Beispiel und die Frage fragt ohne %code% -Klausel, also keine Lösung. Bitte helfen Sie, danke im Voraus.
Es funktioniert nicht, weil Ihre Abfrage auf Folgendes erweitert wird:
%Vor%Sie müssen Ihre Abfrage ein wenig ändern:
%Vor%Verwenden Sie die IN-Klausel, stellen Sie jedoch sicher, dass die Werte in Anführungszeichen und maskiert sind:
%Vor%/ ** * Implodieren Sie ein mehrdimensionales Array von Werten, gruppieren Sie Zeichen, wenn sie mit dem Block "[]" verschieden sind. * @param array $ array Das zu implodierende Array * @return string Das implodierte Array * / Funktion hoArray2SqlLike ($ array) { if (! is_array ($ array)) gibt $ array zurück;
%Vor%}
/ * Daten in Array * /
%Vor%/ * Verknüpfen Sie Array-Elemente zu einem String mit Trennzeichen (Leerzeichen) "" * /
%Vor%/ * Ersetzen Sie das Trennzeichen (Leerraum) "" durch "%" oder "%" * /
%Vor%/ * Einfügen in die Abfrage sql * /
%Vor%'% $ string%'
";
Es wird nicht funktionieren, weil es versuchen wird, den Datenbankwert von (zum Beispiel) 'gum.cn' mit '% gum.cn, lol.com, .....%' zu vergleichen, was niemals sein wird wahr.
Tun Sie das lieber:
%Vor%Ich hoffe, das hilft.
Verwenden Sie die IN-Klausel, stellen Sie jedoch sicher, dass die Werte in Anführungszeichen und maskiert sind:
%Vor%/ ** * Implodieren Sie ein mehrdimensionales Array von Werten, gruppieren Sie Zeichen, wenn sie mit dem Block "[]" verschieden sind. * @param array $ array Das zu implodierende Array * @return string Das implodierte Array * / Funktion hoArray2SqlLike ($ array) { if (! is_array ($ array)) gibt $ array zurück;
%Vor%}