preg_match で変数を使うにはpreg_quoteを使用します。
string preg_quote ( string $str [, string $delimiter = NULL ] )
$file = 'my_file_123456789';
$needle = 'my_file_'
$pattern = '/' . preg_quote($needle, '/') . '/';
if ( preg_match($pattern, $file) ){
echo 'マッチします。';
}