Você está aqui: PHP ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes)

PHP para iniciantes - Como ordenar os elementos de um vetor usando a função sort() do PHP

Quantidade de visualizações: 7582 vezes
Em várias situações nós precisamos ordenar os elementos de um vetor de inteiros, de caracteres, de strings, etc. Para isso nós podemos usar a função sort() da linguagem PHP.

Veja o código a seguir:

<html>
<head>
<title>Estudando PHP</title>
</head>
<body>
 
<?php
  // um vetor com quatro elementos
  $pessoas = array("Kelly", "Alice", "Mônica", "Cíntia"); 
  // mostra os elementos sem ordenação
  echo "Sem ordenar: ";
  foreach($pessoas as $pessoa){
    echo $pessoa . ", ";
  }

  // vamos ordenar o vetor em ordem alfabética
  // crescente
  sort($pessoas); 

  // mostra os elementos ordenados
  echo "<br><br>Ordenados: ";
  foreach($pessoas as $pessoa){
    echo $pessoa . ", ";
  }   
?>
 
</body>
</html>

Ao executar este código nós teremos o seguinte resultado:

Sem ordenar: Kelly, Alice, Mônica, Cíntia
Ordenados: Alice, Cíntia, Kelly, Mônica

Note que a função sort() requer o vetor (array) a ser ordenado e uma flag opcional indicando como a ordenação deverá ser feita. Esta flag pode ser um dos seguintes valores:

SORT_REGULAR - padrão, compara os itens normalmente (não modifica o tipo).
SORT_NUMERIC - compara os items numericamente.
SORT_STRING - compara os itens como strings.
SORT_LOCALE_STRING - compara os itens como strings, utilizando o locale atual. Utiliza o locale que pode ser modificado com setlocale().
SORT_NATURAL - compara os itens como strings utilizando "ordenação natural" tipo natsort().
SORT_FLAG_CASE - pode ser combinado (bitwise OR) com SORT_STRING ou SORT_NATURAL para ordenar strings sem considerar maiúsculas e minúsculas.


PHP ::: Dicas & Truques ::: Programação Orientada a Objetos

Programação Orientada a Objetos em PHP - Como passar um objeto de uma classe para uma função PHP

Quantidade de visualizações: 7041 vezes
Em algumas situações precisamos fornecer um objeto de uma classe para um método de outra classe ou mesmo uma simples função PHP. Nesta dica eu mostro como isso pode ser feito. Note que, ao receber o objeto da classe no método ou função, todas as alterações feitas no objeto serão refletidas no objeto original, ou seja, objetos de classe são automaticamente passados por referência em PHP. Eis o código:

<?php
  // classe Cliente com duas variáveis privadas e seus
  // correspondentes métodos mutatórios e acessórios
  class Cliente{
    private $nome;
    private $email;

    public function setNome($nome){
      $this->nome = $nome;
    }

    public function getNome(){
      return $this->nome;
    }

    public function setEmail($email){
      $this->email = $email;
    }

    public function getEmail(){
      return $this->email;
    }
  }

  // vamos criar um novo objeto da classe Cliente
  $c = new Cliente;
  $c->setNome("Osmar J. Silva");
  $c->setEmail("osmar@arquivodecodigos.com.br");

  // vamos agora passar este objeto para uma função PHP
  imprimirCliente($c);

  // e aqui está a função que recebe o objeto da classe Cliente
  // e exibe o valor de suas variáveis
  function imprimirCliente($cliente){
    echo "Nome: " . $cliente->getNome() . "<br>
      E-Mail: " . $cliente->getEmail(); 
  }
?>

Ao executar este código teremos o seguinte resultado:

Nome: Osmar J. Silva
E-Mail: osmar@arquivodecodigos.com.br


PHP ::: Dicas & Truques ::: Matemática e Estatística

Como calcular juros compostos e montante usando PHP

Quantidade de visualizações: 11898 vezes
O regime de juros compostos é o mais comum no sistema financeiro e portanto, o mais útil para cálculos de problemas do dia-a-dia. Os juros gerados a cada período são incorporados ao principal para o cálculo dos juros do período seguinte.

Chamamos de capitalização o momento em que os juros são incorporados ao principal. Após três meses de capitalização, temos:

1º mês: M = P .(1 + i)
2º mês: o principal é igual ao montante do mês anterior: M = P x (1 + i) x (1 + i)
3º mês: o principal é igual ao montante do mês anterior: M = P x (1 + i) x (1 + i) x (1 + i)

Simplificando, obtemos a fórmula:

M = P . (1 + i)^n

Importante: a taxa i tem que ser expressa na mesma medida de tempo de n, ou seja, taxa de juros ao mês para n meses.

Para calcularmos apenas os juros basta diminuir o principal do montante ao final do período:

J = M - P

Vejamos um exemplo:

Considerando que uma pessoa empresta a outra a quantia de R$ 2.000,00, a juros compostos, pelo prazo de 3 meses, à taxa de 3% ao mês. Quanto deverá ser pago de juros?

Veja o código PHP para a resolução:

<?
  $principal = 2000.00;
  $taxa = 0.03; // 3%
  $meses = 3;
  
  $montante = $principal * pow((1 + $taxa), $meses);
  $juros = $montante - $principal;
  
  echo "O total de juros a ser pago é: " . $juros . "<br>";
  echo "O montante a ser pago é: " . $montante;
?>

Um outra aplicação interessante é mostrar mês a mês a evolução dos juros. Veja o código a seguir:

<?
  $principal = 2000.00;
  $taxa = 0.03; // 3%
  $meses = 3;
  $anterior = 0.0;
  
  for($i = 1; $i <= $meses; $i++){
    $montante = $principal * pow((1 + $taxa), $i);
    $juros = $montante - $principal - $anterior;
  
    $anterior += $juros;
  
    echo "Mês: " . $i . " - Montante: " 
        . $montante . " - Juros: " . $juros . "<br>";
  }
?>



PHP ::: Dicas & Truques ::: Strings e Caracteres

PHP para iniciantes - Como substituir substrings sem considerar maiúsculas e minúsculas usando a função str_ireplace() do PHP

Quantidade de visualizações: 7475 vezes
Nesta dica mostrarei como usar a função str_ireplace() da linguagem PHP para efetuar substituições de partes de palavras, frases e texto desconsiderando as letras maiúsculas e minúsculas. Os parâmetros fornecidos para esta função são os mesmos da função str_replace().

Veja o código completo para o exemplo:

<html>
<head>
<title>Estudando PHP</title>
</head>
<body>
 
<?php
  $frase = "Jsp? Gosto de programar em JSP";
  echo "Original: " . $frase;
  $frase = str_ireplace("JSP", "PHP", $frase);
  echo "<br>Depois da substituição: " . $frase;
?>
 
</body>
</html>

Ao executar este código nós teremos o seguinte resultado:

Original: Jsp? Gosto de programar em JSP
Depois da substituição: PHP? Gosto de programar em PHP


PHP ::: Dicas & Truques ::: Arquivos e Diretórios

Arquivos e diretórios em PHP - Como ler o conteúdo de um arquivo uma linha de cada vez usando a função fgets() do PHP

Quantidade de visualizações: 12251 vezes
Este exemplo mostra como ler o conteúdo de um arquivo uma linha de cada vez usando a função fgets() da linguagem PHP. Observe como usamos a função rtrim() para retirar a quebra de linha do final da linha lida.

Eis o código PHP completo para a dica:

<html>
<head>
<title>Estudando PHP</title>
</head>
<body>
 
<?php
  $arquivo = fopen('dados.txt', 'r');
  if(!$arquivo){
    echo 'Não foi possível abrir o arquivo';
  }
  else{
    while(!feof($arquivo)){
      $linha = fgets($arquivo);
      echo rtrim($linha) . "<br>";
    }
  
    fclose($arquivo);
  }
?>

</body>
</html>

Ao executar este código PHP nós teremos o seguinte resultado:

Esta é a primeira linha do arquivo
Esta é a segunda linha do arquivo
Esta é a terceira linha do arquivo
Esta é a quarta linha do arquivo


PHP ::: Dicas & Truques ::: Data e Hora

Como verificar se um ano é bissexto usando PHP

Quantidade de visualizações: 7988 vezes
Chama-se ano bissexto o ano ao qual é acrescentado um dia extra, ficando com 366 dias, um dia a mais do que os anos normais de 365 dias, ocorrendo a cada quatro anos (exceto anos múltiplos de 100 que não são múltiplos de 400). Isto é feito com o objetivo de manter o calendário anual ajustado com a translação da terra e com os eventos sazonais relacionados às estações do ano.

Na linguagem PHP podemos verificar se um ano é bissexto checando o valor retornado por date("L"). Se o valor retornado for "1", então o ano é bissexto. Observe que, em PHP, o valor 1 é considerado true (verdadeiro).

Veja um trecho de código completo no qual testamos se um determinado ano é bissexto ou não:

<html>
<head>
  <title>Estudos PHP</title>
</head>
 
<body>

<?php  
  // função que verifica se o ano é bissexto
  function ano_bissexto($ano){  
    return (date('L', mktime(0, 0, 0, 1, 1, $ano)) == 1);  
  }  

  // agora vamos testar a função
  $ano = 2020;
  if(ano_bissexto($ano)){
    echo "O ano $ano é bissexto";
  }
  else{
    echo "O ano $ano não é bissexto";
  }
?>  

</body>
</html>

Ao executar este código nós teremos o seguinte resultado:

O ano 2020 é bissexto


Veja mais Dicas e truques de PHP

Dicas e truques de outras linguagens

Quem Somos

Osmar J. Silva
WhatsApp +55 (062) 98553-6711

Goiânia-GO
Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Elétrica pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 15 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
José de Angelis
WhatsApp +55 (062) 98243-1195

Goiânia-GO
Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..

Linguagens Mais Populares

1º lugar: Java
2º lugar: C#
3º lugar: PHP
4º lugar: Delphi
5º lugar: Python
6º lugar: JavaScript
7º lugar: C
8º lugar: C++
9º lugar: VB.NET
10º lugar: JSP (Java Server Pages)



© 2021 Arquivo de Códigos - Todos os direitos reservados | Versión en Español | Versão em Português