ojejej. Iterator przede wszystkim. Czemu iterujesz zmienną $var zamiast $i?
Lepiej chyba użyć pętli foreach.
Nie wiem czemu stringa używasz jak tablicy. W PHP stringi nie są tablicami znaków. Musisz najpierw takiego stringa przekonwertować na tablicę funkcją str_split.
Zwracanie wartości w Case nie jest chyba najlepszym pomysłem. Lepiej zrobić return poza switch.
Z czystej ciekawości przemieliłem ten kod i wyszło mi coś działającego. Radzę jednak potraktować tą funkcję jako naukę i zastosować się do rad w pozostałych odpowiedziach.
function validateForSQL($var){
$var = str_split($var);
foreach($var as $v){
switch($v){
case '\'':
$result = false;
break;
case '"':
$result =false;
break;
case '-':
$result =false;
break;
case '=':
$result =false;
break;
default:
$result = true;
break;
}
if(!$result) return false;
}
return true;
}