Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: из одной переменной вырезать в другую
 
 автор: t3ma   (06.08.2009 в 20:28)   письмо автору
 
 

есть переменная $per['phone']
она содержит цифры: 9069672346
как мне ее можно разбить на три ?
чтобы было так:
$per1 = "906";
$per2 = "967";
$per3 = "2346";

подскажите пожалуйста

  Ответить  
 
 автор: Akdmeh   (06.08.2009 в 21:40)   письмо автору
 
   для: t3ma   (06.08.2009 в 20:28)
 

К.О. спешит на помощь!
$per['phone']='9069672346';
$per1=substr($per['phone'], 0, 3);
$per2=substr($per['phone'], 3, 3);
$per3=substr($per['phone'], 6, 4);
правда с русскими символами работать не будет

  Ответить  
 
 автор: t3ma   (07.08.2009 в 12:53)   письмо автору
 
   для: Akdmeh   (06.08.2009 в 21:40)
 

Спасибо всем за помощь но пользуюсь вашим вариантом :)

еще неподскажите как сделать проверку переменной $per['phone'] если она пустая то yes если она не пустая то должнобыть в ней 10 цифр небольше и неменьше, если нет 10 цифр и она непустая то выводим No

  Ответить  
 
 автор: lifead   (07.08.2009 в 05:05)   письмо автору
 
   для: t3ma   (06.08.2009 в 20:28)
 

Можно представить $per['phone'] как переменную string (в php нет необходимости в переконвертировании переменных) где цифра обозначает порядковый номер символа в переменной, данный способ, у меня, работает и с кириллицей:

<?php
$per
['phone']= '9069672346';
$per1 $per['phone'][0].$per['phone'][1].$per['phone'][2];
$per2 $per['phone'][3].$per['phone'][4].$per['phone'][5];
$per3 $per['phone'][6].$per['phone'][7].$per['phone'][8].$per['phone'][9];
?>

При работе со строковыми переменными не надо забывать, что там функцию "прикрепления или присоединения" выполняет точка поставленная между переменными.

  Ответить  
 
 автор: speedsoft   (07.08.2009 в 09:44)   письмо автору
 
   для: t3ma   (06.08.2009 в 20:28)
 

А я сделал бы вот так :)

preg_match_all("/([0-9]{3})/is", '123456789',$array,PREG_SET_ORDER);
    $per1=$array[0][0];
    $per2=$array[1][0];
    $per3=$array[2][0];

  Ответить  
 
 автор: Loki   (07.08.2009 в 10:01)   письмо автору
 
   для: speedsoft   (07.08.2009 в 09:44)
 

>А я сделал бы вот так :)
preg_split для этих целей существует...

  Ответить  
 
 автор: psychomc   (07.08.2009 в 10:02)   письмо автору
 
   для: Loki   (07.08.2009 в 10:01)
 

каждый по-своему извращается

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования