$zipcode = ["100-0001","1000001","abcdefg"];
foreach($zipcode as $data){
if(preg_match("/^(([0-9]{3}-[0-9]{4})|([0-9]{7}))$/", $data)){
echo $data . " is ok<br>";
} else {
echo $data . " is not zipcode<br>";
}
}

ハイフン有りのみの場合は
/^[0-9]{3}-[0-9]{4}$/
電話番号
/^(([0-9]{2,4}-[0-9]{2,4}-[0-9]{3,4})|([0-9]{8,11}))$/
OK、これでカスタムバリデーションを作っていく