I'm trying to match only numbers and spaces in my php regex but the following fails and I can't seem to understand why, can anyone shed some light on what I'm doing wrong please?
$pattern = '/^[0-9\ ]$/';
Your regular expression just describes one single character. You might want to add a quantifier like +
:
'/^[0-9\ ]+$/'
This describes a string of one or more digits or space characters.