Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> некорректен вывод 
V
    Опции темы
Shark
Дата 25.5.2009, 20:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 703
Регистрация: 18.6.2006
Где: Москва

Репутация: 4
Всего: 4



в БД хранятся телефоны в таком формате
4951234567;4959876543
хочу вывести их в таком виде:
8-495-123-45-67
8-495-987-65-43
код такой:
Код

$num=$phone['phone'];
$array=split("\;",$num);
foreach($array as $index=>$val)
    {    
        $tel=preg_replace("#^(?:\+\d+)? (\d{3,6})(\d{3})(\d{2})(\d{2})$#", "8-($1)-$2-$3-$4", $val);
        echo $tel."<BR>";
    }

но выводит в таком:
4951234567
8-(495)-987-65-43
где ошибка?



--------------------
Смерть - это только начало... 
Агентство недвижимости Premial
PM MAIL WWW ICQ   Вверх
NLspieler
Дата 25.5.2009, 20:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 619
Регистрация: 13.10.2008
Где: Берлин

Репутация: 16
Всего: 19



Если все телефоны состоят из 10 цифр, то такой код точно будет работать.
Код

<?php

function telefony ($num)
{
    $array = explode (';' , $num) ;
    foreach ($array as $telefon)
    {
        echo telefon_format ($telefon) . '</br>' . "\n" ;
    }
}

function telefon_format ($telefon)
{
    return 
    '8-' . $telefon[0] . $telefon[1] . $telefon[2] . 
    '-' . $telefon[3] . $telefon[4] . $telefon[5] . 
    '-' . $telefon[6] . $telefon[7] . 
    '-' . $telefon[8] . $telefon[9] ;
}

?>

PM MAIL   Вверх
enof
Дата 25.5.2009, 20:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 837
Регистрация: 23.1.2009
Где: Санкт-Петербург

Репутация: 30
Всего: 35



Shark, что забыл обязательный пробел в шаблоне?
NLspieler, если посмотреть на шаблон, то можно увидеть, что не все телефоны состоят из 10 цифр.

Это сообщение отредактировал(а) enof - 25.5.2009, 20:49
PM MAIL ICQ Skype   Вверх
Shark
Дата 25.5.2009, 21:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 703
Регистрация: 18.6.2006
Где: Москва

Репутация: 4
Всего: 4



enof, 
Цитата

что забыл обязательный пробел в шаблоне?

на это не смотри...

NLspieler, твой код не работает
в номер есть 495.. это код города.. он может быть от 3 до 6 символов

кто с выводом поможет?


--------------------
Смерть - это только начало... 
Агентство недвижимости Premial
PM MAIL WWW ICQ   Вверх
enof
Дата 25.5.2009, 21:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 837
Регистрация: 23.1.2009
Где: Санкт-Петербург

Репутация: 30
Всего: 35



Цитата(Shark @  25.5.2009,  22:05 Найти цитируемый пост)
на это не смотри...

сказал бы я..
В шаблоне есть обязательный пробел, в номерах пробелов нет. Как думаешь, увенчаются ли твои старания успехом, если ты хочешь юзать кривой шаблон, который не работает?
PM MAIL ICQ Skype   Вверх
Shark
Дата 25.5.2009, 21:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 703
Регистрация: 18.6.2006
Где: Москва

Репутация: 4
Всего: 4



enof, блинsmile... туплю немного... но постоянноsmile
Код

$tel=preg_replace("#(\d{3,6})(\d{3})(\d{2})(\d{2})$#", "8-($1)-$2-$3-$4", $val);

работаетsmile...



--------------------
Смерть - это только начало... 
Агентство недвижимости Premial
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0422 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.