Хорошо, поэтому мой код действительно работает. Но мне нужно отредактировать некоторые из них. Например, я хочу, чтобы он позволял содержать номера 7 или 10 чисел.
Вторая часть заключается в том, что она не подтверждает мои номера с -
или ()
в них, что и должно. Я хочу, чтобы он мог проверять числа с помощью скобок или дефис, без букв.Подтверждающие номера телефонов США
<?php
$phoneNumbers = array("111-1111",
"(111) 111-1111",
"111-111-1111",
"111111",
"",
"aaa-aaaa");
foreach ($phoneNumbers as $phone) {
$failures = 0;
echo "<hr /><p>Checking “$phone”</p><hr />";
// Check for 7 or 10 characters long
if (strlen($phone) < 7) {
++$failures;
echo "<p><small>Warning: “$phone” must be 7 or 10 characters</small></p>";
}
// Check for numbers
if (!preg_match("/^([1]-)?[0-9]{3}-[0-9]{3}-[0-9]{4}$/i", $phone)) {
++$failures;
echo "<p><small>Warning: “$phone” contains non numeric characters</small></p>";
}
if ($failures == 0)
echo "<p>“$phone” is valid</p>";
else
echo "<p>“$phone” is not valid</p>";
}
?>
Используйте [str_replace] (http://php.net/manual/en/function.str-replace.php) Пример: '$ PhoneNumber = str_replace (")", "", $ phoneNumber) 'заменяет") "подстрока с" "пустой строкой; –