Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

sergiogoff

Formatação

Recommended Posts

Idéia:você pode ler caracter a caracter e ir concatenando em outra variável, qdo encontrar um número faz o "-" e continua lendo, qdo encontrar uma string "-"...isso até o final da string. Seria útil se tua string não tiver um tamanho fixo, mas se for fixo usa substr mesmo.Para ver se o caracter é número ou string você pode usar as funções is_numerice is_string.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, espero q este script possa ajudar e melhora-lo afim de supra sua necessidade:

PHP [/tr][tr]

function subst_word($str)

{

$pattern = "[0-9]";

$subst = '0';

$x = eregi_replace($pattern,$subst,$str);

$pattern2 = "[a-z]";

$subst2 = 's';

$y = eregi_replace($pattern2,$subst2,$x);

return $y;

}

 

$s = "123eecx25624sd";

echo subst_word($s);

[/tr]

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ah ! Então você quer trocar os números por 0 e letras por 's' ?Entendi tudo errado então.

E ai walace? é mas você passou uma logica q faz sentido..hehe :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Wallace, eu entendi o que você passou, é o q eu estou fazendo temporariamente pra resolver o problema, mas eu imagianva q existisse uma função que você passava um formato deixasse prontinho pra você...Ex.Eu programo em VB, e no VB tem uma função format$ q funciona da seguinte forma:x = format$("12345678","000-00-00/1")x = 123-45-67/8imaginei que desse pra fazer algo assim com o PHP...rockbilly..vou dar uma testada nessa função q você passou.. talvez resolva meuu problema...abraços pessoal.

Compartilhar este post


Link para o post
Compartilhar em outros sites

entao esta função vai lhe ajudar:

PHP [/tr][tr]

function format($str,$fmt)

{

$n = strlen($fmt);

for ($x=0; $x < $n; $x++)

{

$w[$x] = substr($fmt,$x,1);

}

$n1 = strlen($str);

for ($y=0; $y < $n1; $y++)

{

$z[$y] = substr($str,$y,1);

}

for ($j=0; $j < $n; $j++)

{

for ($i=0; $i<$n; $i++)

{

if ($w[$j] == '0')

{

$aux = $w[$j];

$w[$j] = $z[$i];

$z[$i] = $aux;

}

}

}

$p='';

foreach ($w as $cach)

{

$p.= $cach;

}

return $p;

}

$s = format("123456789","000-000-00/0");

echo $s;

[/tr]

Compartilhar este post


Link para o post
Compartilhar em outros sites

Alguma funcao que apartir de uma string a faça um array?tipo string $string="abcde" e depois fazer echo $string[1] // resultado "a" ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao precisa de função para isso, só você testar o que acabou de fazer e ira ver o resultado mesmo

 

ou se preferir:

 

$string="abcde";

echo $string{0};// ou $string[0]

 

lembre-se que o array começa com zero entao $string[1] = "b";

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.