codice:
if (preg_match("/^[0-9a-zA-Z\-\.àèìòùÀÈÌÒÙ& '\/"]+$/", $searchStr))
è un problema di escape di php
ti conviene mettere l'espressione regolare dentro apici o un heredoc, perchè quello che lo sta facendo impazzire è il doppio apice prima della parentesi quadra chiusa che per php sta chiudendo la stringa, da qui l'errore

io ti consiglio di fare così:

Codice PHP:
<?php
$regex 
= <<<REGEX
/^[0-9a-zA-Z\-\.àèìòùÀÈÌÒÙ& \'\/"]+$/
REGEX;

if (
preg_match($regex$searchStr))
?>