Я согласен, что записи 4k не о чем беспокоиться. Я предлагаю запросить телефонные номера и основной идентификатор таблицы, убрать все символы из телефонного номера и затем манипулировать им, чтобы получить нужный формат. Или вы можете сохранить его как числа и использовать свой интерфейс для изменения номера каждый раз, когда вы его отображаете. Ниже приведен небольшой непроверенный скрипт, который вы можете попробовать использовать. Не обрабатывает добавочные номера и ожидает 10 номеров.
// mysql_connect stuff
$q = mysql_query("Select phone_id, phone_number From phones");
while($r = mysql_fetch_assoc($q)) {
$num = ereg_replace("[^0-9]", "", $r['phone_number']);
if(strlen($num) == 10) {
$num = substr($num, 0, 3) . '-' . substr($num, 3, 3) . '-' . $substr($num,-4);
}
$update = mysql_query("Update phones Set phone_number = '" . $num . "' Where phone_id = " . $r['phone_id']);
// updated?
}