Estudar pela Apostila de PHP
Trocar valor de duas variáveis
Antes de resolvermos esse script, precisamos aprender um algoritmo simples, de trocar o valor de duas variáveis.Vamos supor que:
$a = 1;
$b = 2;
Queremos que fique:
$a = 2;
$b = 1;
O primeiro passo é faze $a receber valor de $b, né?
$a = $b;
Agora só fazer o contrário, fazer $b receber o valor de $a.
$b = $a;
Simples, não?
Não!
A segunda expressão tá errada, pois agora o valor de $a mudou pouco antes!
A solução pra isso é usar uma variável temporária.
O jeito certo de inverter valores é:
$temp = $a;
$a = $b;
$b = $a;
Prontinho, aquele valor de $a que tínhamos no começo fica armazenado na variável $tempo.
Depois, o $b pega o valor desse $temp
Três Números em Ordem Crescente
Vamos pegar três números de um formulário HTML.Inicialmente, dizemos que o menor valor é o primeiro, o valor do meio é o segundo número e o maior número é o terceiro digitado:
$menor = $_GET['numero1'];
$meio = $_GET['numero2'];
$maior = $_GET['numero3'];
Agora vem a lógica.
Vamos pegar as variáveis duas a duas.
Primeiro pegamos as duas primeiras: $menor e $meio
Se o valor de $meio for menor que $menor, devemos inverter o valor delas!
Agora vamos comparar $menor e $maior
Se $maior for menor que $menor, invertermos as variáveis.
Por fim, comparamos $meio e $maior
Se $maior for menor que $meio, devemos inverter os valores.
Veja como ficou nosso código:
<html> <head> <title>Apostila PHP Progressivo</title> </head> <body> <form action="" method="get"> Numero 1: <input type="text" name="numero1" /><br /> Numero 2: <input type="text" name="numero2" /><br /> Numero 3: <input type="text" name="numero3" /><br /> <input type="submit" name="submit" value="Testar" /> </form> <?php $menor = $_GET['numero1']; $meio = $_GET['numero2']; $maior = $_GET['numero3']; if($meio < $menor){ $temp=$menor; $menor=$meio; $meio=$temp; } if($maior < $menor){ $temp=$menor; $menor=$maior; $maior=$temp; } if($maior < $meio){ $temp=$meio; $meio=$maior; $maior=$temp; } echo "$menor < $meio < $maior"; ?> </body> </html>