$string = 'ab!:;c+12,.3 €def-x/';
$string = preg_replace('/[^a-zA-Z0-9\s€+-]+/', '', $string);
$val=htmlentities($string, ENT_NOQUOTES, );
echo $string,"\n";
エコー
abc+123 �def-x
そしてではない
abc+123 €def-x
ユーロ記号を正規表現を介してデータベースに取り込む必要がありますが、ユーロ記号としては取得できません。