Algumas Funções do PHP
explode(separador, string, limite) Retorna um array contendo cada elemento de uma parte da string
informada, determinada pelo separador. Limite é opcional, se informado indica o número máximo de
elementos do array (neste caso, o último elemento conterá o restante da string)
<?php$texto = "azul - branco - roxo – verde";$vetor = explode(" - ", $texto, 3);echo "<pre>"; //mantém as quebras de linhasprint_r($vetor);echo "</pre>";?>
Array ( [0] => azul [1] => branco [2] => roxo – verde )
implode(separador, array) Realiza a função inversa de explode, retorna uma string
com todos os elementos do array, separando-os de acordo com o separador informado.
<?php$vetor = array("azul", "branco", "roxo", "verde");echo "Cores disponíveis: " . implode(" - ", $vetor);?>
Resultado:
Cores disponíveis: azul - branco - roxo - verde
number_format(numero, dec, sep_dec, sep_mil) Utilizada para formatar um número para que seja exibido um
separador de milhar e um separador decimal. numero número a ser formatado dec número de casas decimais sep_dec separador de casas decimais sep_mil separador de milhar
<?php$numero = number_format(1234567.93,5,"." , "," );echo "$numero <br>";
$numero = number_format(1234567.96,1,"." , "#");echo "arredondamento para cima => $numero <br>"; //1#234#568.0
$numero = number_format(1234567.94,1,"." , "#");echo "arredondamento para baixo => $numero <br>"; //1#234#567.9?>
strpos(texto,txt_busca, pos_inic) Retorna a posição da primeira ocorrência de uma string
dentro de outra. Você pode informar a posição onde a busca será iniciada.
Se não for encontrada a string procurada, a função retorna FALSE.
A função strpos é case sensitive. Existe a função stripos, que não faz distinção entre
maiúsculas e minúsculas. A posição inicia-se em 0 (zero)
A função contrária a strpos é strrpos/strripos, que retorna a última ocorrência.
<?php$str = "ASTI análise de sistemas e tecnologias da informação <br>";$posicao1 = strpos ($str, "A");$posicao2 = strpos ($str, "ise");$posicao3 = stripos ($str, "SIST");
echo "posição do caracter 1: $posicao1 <br>";echo "posição do caracter 2: $posicao2 <br>";echo "posição do caracter 3: $posicao3 ";echo "o valor falso é indicado por vazio";?>
strlen(texto)
Retorna o tamanho da string informada
<?php
$texto = “Teste de Strlen”;
echo “quantidade de caracteres:”.strlen($texto);
?>
quantidade de caracteres: 15
strtolower(texto)
Converte todos os caracteres do texto informado em minúsculos.
strtoupper(texto)
Converte todos os caracteres do texto informado em maiúsculos.
<?php$texto = "Texto em php <br> ";
$mai = strtoupper ($texto);echo "texto maiúsculo: $mai";
$min = strtolower ($texto);echo "texto minúsculo: $min"; ?>
strtr(caracter, txt_busca, txt_troca) Executa a busca e troca de caracteres por outros dentro de
uma string definida. Todas as ocorrências de txt_busca em texto serão trocadas por txt_troca.
<?php$texto = "Texto em php <br> ";
$p1 = strtr ($texto, "p", "J");echo "novo texto: $p1";
$p2 = strtr ($texto, "P", "A");echo "novo texto: $p2";?>
substr(texto,pos_inicio, tamanho) Retorna um pedaço da string informada, iniciando em pos_inicio e com o tamanho informado.
Se tamanho não for informado o resultado será a parte final da string.
<?php$texto="Análise de Sistemas e Tecnologias da Informação <br> ";
$p1 = substr ($texto, 0, 8). "<br>";echo "novo texto: $p1";
$p2 = substr ($texto, 10);echo "novo texto: $p2";?>
Exercícios1) Crie um programa em PHP que:
a) Armazene na variável $texto o seguinte conteúdo: teste de troca de / que aparece / varias / vezes.
b) Informe a quantidade de caracteres da variável $texto.c) Mostre a primeira ocorrência do caractere /;d) Troque todas as ocorrências de / por & e armazene na variável na
variável $fatec.e) Exiba as strings $texto e $fatec.
2) Crie um programa em PHP que, dada uma variável no formato R$ 99.999,999 faça o seguinte:
a) Retire os caracteres: $, R e . (ponto).b) Troque a vírgula por ponto.c) Mostre o resultado com duas casas decimais, utilizando vírgula
como separador de decimais e ponto como separador de milhar.
Analisando alguns códigos
Elabore um programa em PHP que a partir da data atual calcule a data de vencimento de uma compra. O prazo de vencimento é fornecido em uma variável. Imprima a data atual, o prazo de vencimento e a data de vencimento.
<?php$dia = date("d");$mes = date("m");$ano = date("Y");$prazo = 40;
$venc = ($dia + $prazo);
if ($venc > 30) { $venc -= 30; $mes += 1; }
echo "Data da compra: ", date("d-m-Y"), "<br>";echo "Prazo: ", $prazo, "<br>";echo "Data de Pagamento: $venc-$mes-$ano";?>
<?php
// Calcula data de vencimento// a partir de um prazo fornecido e da data atual
$atual = time();$periodo = 45; // em dias// Calcula vencimento, transformando período em
segundos$vencto = $atual + ($periodo*3600*24);
echo "Data atual: ", date("d-m-Y",$atual), "<br>\n";echo "Prazo: ", $periodo, " dias<br>\n";echo "Data vencimento: ", date("d-m-Y",$vencto);
?>
<?php// Calcula data de vencimento// a partir de um prazo fornecido e da data atual// utilizando a função mktime
$dia = date("d"); //pega o dia atual$mes = date("m"); //pega mes atual$ano = date("Y"); //pega o ano atual com 4 digitos$prazo = 40; //prazo de 40 dias
// Função mktime(h,m,s,mes,dia,ano) -> transforma em timestamp$venc = mktime(0,0,0,$mes,$dia+$prazo,$ano);
echo "Data da compra: ", date("d-m-Y"), "<br>";echo "Prazo: ", $prazo, "<br>";echo "Vencimento: ", date("d-m-Y",$venc), "<br>";?>