Pretty self пояснительный: что происходит? Почему эта строка (2 casted) возвращает совпадение, но пустое? Вместо простого пустого массива?preg_match неправильный результат
php > preg_match("/[a-z\s\']*/", (string)2, $matches);
php > var_dump($matches);
array(1) {
[0]=>
string(0) ""
}
php >
http://php.net/manual/en/function.preg-match.php –