segunda-feira, 4 de novembro de 2013

#INSTALANDO E CONFIGURANDO O PROXY - SQUID

Olá pessoal,

Neste post mostro como podemos criar um proxy com autenticação de usuários para uma pequena rede de computadores, onde poderemos filtrar os acessos a internet, bem como, centralizar e monitorar todos os dados que são acessados na Web.

A final o que é e para que serve um proxy de rede?


  • Compartilhar a conexão;
  • Impor restrições de acesso por: horário, IP, usuários;
  • Funcionar como um cache de arquivos Web;
  • Armazenar todos os acessos a páginas da Web;
  • Permitir a autenticação de usuários;
  • Software aberto.
1º Passo: Instalação
Vamos utilizar para o exemplo, o SQUID, que roda muito bem com qualquer distribuição derivada do Debian e também outras distribuições Linux. Eu já configurei o Squid no Ubuntu e no Debian sem problemas e com muita facilidade.

#apt-get update
#apt-get install squid



2º Passo: Processo de Configuração

Mover o arquivo de configuração original do Squid para mante-lo intacto, caso seja necessário realizar alguma consulta para sanar dúvidas posteriores.
 
#mv /etc/squid/squid.conf /home

Utilizando um editor de textos qualquer, vamos realizar a digitação do novo "squid.conf", arquivo que contém as regras de funcionamento do servidor proxy.

#vim /etc/squid/squid.conf

Digitar as linhas abaixo:


http_port 3128
visible_hostname Server_Squid

acl all src 0.0.0.0/0.0.0.0
acl localhost src 127.0.0.0/255.255.255.255
acl redelocal src 192.168.254.0/24

auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/squid_passwd
acl autenticados proxy_auth REQUIRED

http_access allow autenticados
http_access allow localhost
http_access allow redelocal
http_access deny all


Salvar as alterações do arquivo de configuração "squid.conf" e reiniciar o serviço.

#service squid restart

Descrição da linhas:

1. http_port → porta onde o serviço está disponível;
2. visible_hostname → nome do servidor;
3. acl all src 0.0.0.0/0.0.0.0 → política que estabelece que qualquer IP possa acessar o proxy;
4. acl localhost src 127.0.0.0/255.255.255.255 → utilizada para navegar no próprio proxy;
5. acl redelocal src 192.168.1.0/24 → define a classe de IPs dos micros da rede;

3º Passo: Baixar pacotes para autenticação de usuários

Para que a autenticação dos usuários seja feita, é necessário baixar alguns pacotes e realizar alguns ajustes ao servidor proxy para que isso aconteça, é necessário de adicionar ao servidor os usuários que poderão acessar a Internet.

Baixar os pacotes necessários.

#apt-get install apache2-utils mini-httpd


Criar o arquivo responsável por armazenar os nomes de usuários com acesso ao proxy.
 

#touch /etc/squid/squid_passwd

Adicionar os usuários ao arquivo "squid_passwd", tendo em vista que no exemplo o "fabricio" representa o nome do que terá acesso ao proxy, não é necessário que ele seja usuário do sistema operacional, onde o servidor está rodando.

#htpasswd /etc/squid/squid_passwd fabricio
(informar a senha e confirmar a mesma)

Descrição da linhas:

6. auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/squid_passwd →esta linha é responśavel por efetuar a autenticação dos usuários no proxy;

7. acl autenticados proxy_auth REQUIRED →informa que todos os usuários deverão passar por um autenticação para acessarem a Internet;

acl → lista de controle de acesso

8. http_access allow autenticados →libera todos os usuários autenticados pela regra da linha 7;

9. http_access allow localhost → libera o próprio navegador do servidor para ter acesso a Internet;

10. http_access allow redelocal → libera todos os computadores que possuírem a classe de IPs definida na regra da linha número 5;

11. http_access deny all →bloqueia todos os computadores que não se encaixam nas regras do squid.

5º Passo: 

Reiniciar o serviço

#service squid restart

6º Passo: Configurando as estações clientes

6.1. Para o exemplo será utilizado o "Mozilla Firefox", bastando ir até o menu                 Ferramentas/Opções ou Editar/Preferências (dependendo da versão);
6.2. Comando Avançado/Guia Rede;
6.3. Botão "Configurar Conexão";
6.4. Na opção "Configuração manual de proxy:"
     

6.5. Na opção "HTTP:" informar o IP do servidor proxy na opção "Porta:" informar a porta que será utilizada pelo serviço, neste caso será a porta "3128". Depois clicar em "Ok" e fechar o navegador.
6.6. Abrir o Mozilla novamente e será solicitado o "Nome do usuário" e a sua "Senha" para poder abrir o site desejado.



Pronto, o seu proxy já está funcionado de forma básica, no próximo post veremos como aplicar as ALC's para definir como o proxy vai tratar os usuários e suas respectivas regras. 
Espero que tenha de alguma forma facilitado o trabalho de profissionais que utilizam Linux ou até mesmo administradores de pequenas redes de computadores.

Até o próximo.

segunda-feira, 21 de outubro de 2013

#COMEÇANDO O PHP DE FORMA SIMPLES E FÁCIL – PARTE.04

Olá pessoal,

Retornando para um novo post sobre PHP, nesta faze vamos trabalhar a parte de manipulação de dados vindos de formulários HTML ou até mesmo elaborados no próprio PHP. No início será abordado a integração do PHP com o SGBD (Sistema Gerenciador de Banco de Dados), para este exemplo vou utilizar o MySQL para aplicar os scripts elaborados com PHP.

Passo1: Criar o banco de dados e a respectiva tabela, onde serão guardados os dados específicos;
Banco:
mysql>CREATE DATABASE empresa;
mysql>USE empresa;

Tabela: clientes
mysql> create table clientes( cod_cli int(10) not null primary key auto_increment, nome_cli varchar(100), email_cli varchar(150));

Inserir dados:
mysql> insert into clientes (nome_cli,email_cli) values ('fabricio', 'fabricio@terra.com.br'), ('ana julia', 'anajulia@yahoo.com.br');

Exibir dados:
mysql> select * from clientes;

Passo2: Estabelecer a conexão com o servidor e selecionar o banco de dados;

Para criar a conexão é utilizada a função mysql_connect, apenas passando alguns parâmetros como: nome do servidor, usuário e senha de autenticação.

$conexao = mysql_connect(“localhost”,”root”,”senha”);
  • localhost (servidor);
  • root (usuário);
  • senha
No parâmetro “servidor” é possível também utilizar o endereço IP do servidor. A próxima ação e selecionar o banco desejado através do comando mysql_select_db.

mysql_select_db(“empresa”);

Passo3: Utilizar o PHP para retornar e manipular dados do banco;

Funções
  • mysql_query
  • mysql_result
  • mysql_fetch_array
  • mysql_fetch_row
  • mysql_close

Um exemplo:

<?php
 $conexao = mysql_connect("localhost","root","123");
 mysql_select_db("empresa");

 $dados = mysql_query("select * from clientes");

  while ($resultado1=mysql_fetch_array($dados)){

        $codigo = $resultado1["cod_cli"];
        $nome = $resultado1["nome_cli"];

        echo "<b>Código:</b> $codigo<br>";
        echo "<b>Nome:</b> $nome<br><br>";
  }
?>

Teste no navegador:

Abrir o navegador preferido e digitar no endereço: localhost/retorna.php



Descrevendo as linhas de código:
  1. Inicializa o código PHP;
  2. Estabelece a conexão com o servidor Web, previamente já configurado, onde serão interpretados os códigos PHP, a função mysql_connect é responsável por realizar a conexão com o servidor e autenticar o usuário que possui permissão de acesso ao servidor;
  3. A função mysql_select_db é responsável por abrir o banco de dados, de onde serão lidas as informações para exibição no navegador;
  4. ---
  5. A variável $dados armazena o resultado da pesquisa realizada na tabela “clientes”;
  6. ---
  7. A rotina de repetição ficará executando até não ter mais informações na variável $dados, armazenadas em um vetor por meio da função “mysql_fetch_array”, na variável $resultado1;
  8. ---
  9. São criadas duas variáveis $codigo e $nome, onde serão armazenados os índices do vetor $resultado1;
  10. idem ao anterior;
  11. ---
  12. Imprimir na tela a informação da variável $codigo;
  13. Imprimir na tela a informação da variável $nome;
  14. Fecha a estrutura de repetição;
  15. Fecha o código PHP.
Bem esse é somente um exemplo da utilização de funções mysql e php para acesso e manipulação de informações de um banco de dados MySQL.

quarta-feira, 8 de maio de 2013

#COMEÇANDO O PHP DE FORMA SIMPLES E FÁCIL – PARTE.03


As vezes durante a elaboração de um programa, temos a necessidade de elaborar processos de repetição de um determinado bloco de comandos. Um exemplo muito comum é ficar imprimindo registros de uma entidade, até que uma determinada condição passe a ser falsa.
No exemplo abaixo utilizamos o comando WHILE, ou seja, enquanto uma determinada condição for verdadeira, uma expressão ou um bloco de comandos é executada, por exemplo.

Sintaxe:

while (expressão)
{
comandos;
}

<?php
//TRABALHANDO O COMANDO DE REPETIÇÃO WHILE - ENQUANTO
$n = 1;
while ($n < 10)
{
echo $n;
echo '<br>';
$n = $n + 1;
}
?>

Salvamos o programa com o nome de while1.php, sempre no diretório /var/www.



No programa que foi executado acima, foi atribuído a variável $n o valor 1, para o programa poder controlar o número de vezes que o loop será executado. Na sequência o comando while analisa a expressão ($n <= 10), enquanto a variável $n possuir um valor menor ou igual a 10, o bloco de comandos irá imprimir o valor da variável $n, quebrar a linha e somar mais 1 na variável $n, sendo assim por diante até a expressão ser falsa.

a) Agora tente fazer sozinho, altere o programa anterior para que ele imprima a tabuada do 127.
b) Crie um programa que some os valores impressos de 1 até 10.
c) Crie um programa que some os valores impressos de 1 até 10, some somente os pares e somente os impares.

As soluções estarão no próximo POST.

FOR – PARA

O comando FOR é semelhante ao WHILE, ambos são utilizados para criarem loops para executarem uma determinada expressão ou bloco de comandos, no caso do FOR o programador informa a quantidade de vezes que o loop será executador.

Sintaxe:

for (inicialização;condição;operador)
{
comandos;
}
  • inicialização – variável responsável por iniciar e controlar o processo de repetição;
  • condição – deve ser verdadeira para que o processo de repetição seja executado;
  • operador – responsável pela atualização da variável de controle.
Vamos ao exemplo:

<?php
/*TRABALHANDO COM O LOOP FOR - UTILIZADO PARA EXECUTAR UM CONJUNTO
DE INSTRUÇÕES UM DETERMINADO Nº DE VEZES*/

for ($cont = 0; $cont < 10; $cont = $cont + 1)
{
echo $cont;
echo '<br>';
$t = $t + $cont;
}
echo 'total: '.$t;
?>


  • O programa inicializa com a variável $cont = 0, sendo que o bloco de comandos será executado até que a condição $cont < 10. Sendo a variável $cont = $cont + 1, atualizada a cada vez que o loop for executador, somando mais 1 a variável $cont.
  • Na próxima etapa, ou seja, no bloco de comandos, será impresso na tela o valor de echo $cont;
  • Realiza um quebra de linha echo '<br>';
  • Criamos uma variável que somará os valores impressos $t = $t + $cont;
  • E após a conclusão do loop, será impresso a soma total echo 'Total: '.$t

Incremento e Decremento

Podemos reduzir a expressão

$cont = $cont + 1 ou $cont = $cont - 1

para

$cont++ ou $cont--

No exemplo acima o interpretador PHP vai somar mais um devido ao recurso de incrementação que as linguagens de programação proporcionam. Abaixo modificamos a linha do comando FOR, como mostra o exemplo abaixo:

<?php
/*TRABALHANDO COM O LOOP FOR - UTILIZADO PARA EXECUTAR UM CONJUNTO
DE INSTRUÇÕES UM DETERMINADO Nº DE VEZES*/

for ($cont = 0; $cont < 10; $cont++)
{
echo $cont;
echo '<br>';
$t = $t + $cont;
}
echo 'total: '.$t;
?>

Até o próximo POST

terça-feira, 9 de abril de 2013

COMEÇANDO O PHP DE FORMA SIMPLES E FÁCIL – PARTE.02



Bem agora vamos começar a realizar alguns testes com expressões no PHP, aplicar condições para que o fluxo do programa siga um ou outro determinado caminho, para isso utilizaremos Estruturas de Controle.

Comandos Condicionais

IF/ELSEIF/ELSE – comandos (se, senão se e senão), ambos de execução condicional de bloco, ou seja, determina se um bloco deve ou não ser executado, de acordo com uma condição lógica.

If (expressão1)
{
bloco1;
}
elseif (expressão2)
{
bloco2;
}
else
{
bloco3;
}

Obs.: Sempre que houver um bloco 'else' deve ser ser o último.

Alguns operadores de comparação:

Operador
Descrição
>
É maior do que
<
É menor do que
>=
É maior ou igual do que
<=
É menor ou igual do que
==
É igual
!=
É diferente
&&
AND lógico (e)
||
OR lógico (ou)

Digite o exemplo abaixo e salve com o nome de 'quarto.php', para exemplificar a utilização do comando IF.

<?php
//TRABALHANDO COM O COMANDO SE – IF

$nota = 10;
if ($nota == 10)
{
echo 'Parabéns!!!<br>';
echo 'Voce tirou a nota maxima.';
}
?>

Abra o navegador execute o programa '/localhost/quarto.php'.

  • No programa executado acima, é atribuído o valor 10 à variável $nota, ou seja, $nota = 10;
  • Na linha abaixo, realizamos um teste, onde definimos que a variável $nota tem que ser igual a 10 ($nota == 10), sendo assim será exibido o bloco que está entre as chaves, exibindo o conteúdo com mostra a figura acima.

Na situação do 'quarto.php', se modicarmos o valor da variável $nota = 9, por exemplo, o programa não vai imprimir nada na tela, por que não há mais nenhuma linha abaixo da chave que finaliza o bloco. O programa para por aí.

O próximo exemplo disponibiliza a execução de um outro bloco de comandos, caso a variável $nota não seja igual 10. Realizamos as seguintes alterações no código do programa:

<?php
//TESTANDO O COMANDO SE E SENÃO – IF E ELSE

$nota = 9;
if ($nota == 10)
}
echo 'Parabéns!!!<br>';
echo 'Voce tirou a nota maxima.';
}
else
{
echo 'Muito bom!!!<br>';
echo 'Continue assim.';
}
?>

Salvamos o programa com o nome de 'quinto.php' e executamos o mesmo no navegador.

  • Modificamos o valor da variável $nota = 9;
  • Quando o comando if ($nota == 10) for executado, o interpretador verifica que $nota não é igual a 10, ou seja, a condição é FALSA;
  • Então ele ignora o primeiro bloco que exibe as mensagens (Parabens, você tirou a nota maxima);
  • E imprime o segundo bloco, referente ao comando 'else' – senão (Muito bom, continue assim).
Bem e se eu precisar aplicar uma nova condição para ser avaliada e tomar outra decisão, podemos utilizar o ESLEIF (senão se), como segue o exemplo abaixo.

<?php
//TESTANDO O COMANDO ELSEIF - senão se
$n = 11;

if ($n < 5 && $n >= 0)
{
echo 'O valor e menor que 5 e maior ou igual a 0.';
}
elseif ($n >=5 && $n <= 10)
{
echo 'E maior ou igual a 5 e menor ou igual a 10.';
}
else {
echo 'E maior que 10.';
}
?>
  • No exemplo acima, declaramos uma variável e atribuímos o valor 11 a ela ($n = 11);
  • Após testamos a mesma da seguinte forma: se a variável ($n) for menor e maior ou igual a zero ( if ($n < 5 && $n >= 0) ), será impresso na tela a seguinte mensagem - echo 'O valor e menor que 5 e maior ou igual a 0.', senão for passa para o próximo estágio;
  • Senão se a variável possuir um valor maior ou igual a 5 e menor ou igual a 10 ( elseif ($n >=5 && $n <= 10) ), será impresso na tela a seguinte mensagem - echo 'E maior ou igual a 5 e menor ou igual a 10.', senão for passa para o último estágio;
  • Senão o valor da variável é maior que 10 ( else { echo 'E maior que 10'; }).
No exemplo foi utilizado o operador lógico && (e), que pode ser utilizado quando necessitamos testar um intervalo entre uma e outra condição.

Bem, agora altere o valor de da variável $n para testar todas as possibilidades, salve e atualize o navegador para ver o resultado.


--------------------------------------------------------------------------------------------------------
SWITCH – escolha
  • Comando parecido com o IF;
  • Utilizado quando temos uma mesma variável para ser testada com vários valores;
  • Presença do comando BREAK, responsável por parar o fluxo de comandos pertencente a um bloco;
  • DEFAULT, utilizado como se fosse o comando ELSE, funciona como uma alternativa, se nenhum dos casos anteriores forem satisfeitos.
Vejamos a sintaxe do comando:

switch (operador)
{
case valor1 :
<comandos>;
break;
case valor2 :
<comandos>;
break;
.....
case valorn :
<comandos>;
break;
default :
<comandos>
break;

Vamos ao nosso primeiro exemplo: Neste programa, declaramos uma variável e atribuímos o valor '2' a ela, depois através do comando SWITCH, escolhemos o CASE que se adapte ao valor atribuído a variável.

<?php
//TRABALHANDO COM O COMANDO SWITCH
$x = 2;
switch ($x)
{
case 1:
echo 'Numero 1';
break;
case 2:
echo 'Numero 2';
break;
case 3:
echo 'Numero 3';
break;
default:
echo 'Nenhum valor possivel';
break;
}
?>

Salvamos com o nome de 'sexto.php' e executamos o mesmo através do nosso navegador padrão.

A saída do programa será, imprimir na tela a mensagem “Numero 2”, pelo motivo da variável possuir esse valor vinculado a ela.


Próximo exemplo utilizando o comando SWITCH, vamos imprimir os dias da semana por extenso:

<?php
//IMPRIMINDO POR EXTENSO

$y = 'terca';
switch ($y)
{
case 'segunda':
echo 'Segunda-feira';
break;
case 'terca':
echo 'Terca-feira';
break;
default:
echo 'Sabado';
break;
}
?>

Salvamos com o nome de 'setimo.php' e testamos o mesmo no navegador.

No exemplo, a variável $y armazena um número inteiro que identifica o dia da semana.


No próximo exemplo, vamos criar expressões para que um determinado caso seja devidamente executado pelo interpretador. Suponhamos que temos que imprimir se com uma determinada média, um aluno estará: APROVADO, REPROVADO ou em EXAME.

Para isso:
  • se a mádia for menor que 4: Reprovado;
  • se a média for menor que 7: Exame;
  • se a média for igual ou maior que 7: Aprovado.
<?php
$m = 7;
switch ($m)
{
case ($m < 4):
echo 'Reprovado';
break;
case ($m >= 7):
echo 'Aprovado';
break;
default:
echo 'Exame';
break;
}
?>

Salvamos com o nome de 'decimo.php' e executamos o programa no navegador.


Como saída do programa, tivemos a mensagem “APROVADO', pelo motivo que a média do aluno é 7 ($m = 7), para testar as outras possibilidade, alteramos o valor da variável $m = 3 (REPROVADO) e depois $m = 5 (EXAME).

Bem, com esta nova postagem, aprendamos como realizar testes, com o objetivo de avaliar condicionais para nossos programas em feitos em PHP.

Até o próximo.

segunda-feira, 1 de abril de 2013

# COMEÇANDO O PHP DE FORMA SIMPLES E FÁCIL – PARTE 1


Bom a linguagem PHP surgiu em 1995, Rasmus Lerdorf desenvolveu uma ferramenta chamada PHP/FI – Personal Home Page/Forms Interpreter, voltada para processar formulários na Web, tornando-se uma das maiores linguagens de programação utilizada na rede mundial de computadores.

Para podermos executar os nossos programas em PHP, é necessário instalar o interpretador PHP um servidor Web, vou utilizar o L.A.M.P, que já foi publicado o que ele nos permite fazer e como realizar sua instalação e configuração básica. Abaixo segue o link:


Criando nosso primeiro programa:

1. Abrir um editor de textos comum, como o GEDIT ou VIM para inciar a escrever as linhas do programa, que futuramente será interpreto pelo PHP e exibido sua ou suas saídas. Para começar, vamos imprimir uma mensagem na tela do nosso Navegador (Mozilla, Chrome, etc.) preferido, para isso digite o código abaixo:

OBS: o PHP é case-sensitive, ou seja, ele diferencia caracteres maiúsculos de minúsculos, como nas distribuições Linux, porém alguns comandos da linguagem poderão vir em caracteres maiúsculos.

Exemplo 1:

<?php
echo 'Ola que tal!!!';
?>

Salve o programa com o nome de 'primeiro.php' sem aspas, no diretório padrão do seu servidor, no caso do Apache, no seguinte local: /var/www.

Decifrando o código:

  • Na primeira linha, iniciamos a linguagem PHP, com o comando de <?php (sinal de menor, ponto de interrogação e os caracteres php) e na última, finalizamos com ?> (ponto de interrogação e sinal de maior).
  • Na segunda linha, utilizamos o comando 'echo' (imprimir) como comando de saída no monitor.
Para executar o programa no seu computador, abra o seu navegador e digite o caminho do seu servidor (locahost) e nome do arquivo salvo. Como mostrado na figura abaixo:


Na figura acima informo o caminho do meu servidor, bem com o nome do programa que foi executado, e o na área branca da página e mostrado a saída do programa.

Comentários no PHP

Bem, para realizar toda a documentação das rotinas, lógicas e comandos utilizados na criação de programas em PHP, são necessários os comentários no próprio código PHP:

Comentário de uma linha somente: // duas barras

<?php
//ESTE TEXTO NÃO VAI SER IMPRESSO NA TELA
echo 'Este texto vai ser impresso na tela.';
echo '<br>';
echo 'Este texto esta na segunda linha.';
?>

Salvamos com o nome de 'segundo.php' e chamamos o mesmo através do nosso navegador:
OBS.: na linha onde aparece '<br>', é uma TAG HTML, utilizada para gerar uma quebra de linha, como mostra a figura abaixo.


Comentários com múltiplas linhas: /* …... */

<?php
//ESTE TEXTO NÃO VAI SER IMPRESSO NA TELA
echo 'Este texto vai ser impresso na tela.';
echo '<br>';
echo 'Este texto esta na segunda linha.';
/*ESTE COMENTÁRIO POSSUI VÁRIAS LINHAS,
SENDO NECESSÁRIO A QUEBRA DE LINHAS, PARA PODER
EXPLICAR MELHOR*/
?>

Editamos o arquivo 'segundo.php', e acrescentamos o comentário com várias linhas, salvamos as modificações e atualizamos o navegador (F5).

Variáveis no PHP

  • Definição: variável é uma área reservada da memória principal, vinculada a um identificador, para armazenar uma determinada informação;
  • No PHP não é necessário declarar as variáveis no inicio do programa;
  • Em PHP os identificadores de variáveis são iniciados por um cifrão ($);
  • Não é necessário definir o tipo da variável (int, float, double, varchar, char, text, etc.)
  • São aplicadas as mesmas regras para criar a identificação de uma variável, nunca devemos iniciar um identificador com um caractere do tipo numérico.
No exemplo abaixo, declaramos duas variáveis e atribuímos (=) a elas informações e logo em seguida exibimos suas informações com o comando 'echo', note que o texto extático dever ir entre aspas simples ' ', e as variáveis são concatenadas, ou seja, agregadas a saída do comando, com a utilização de um ponto (.), como em: echo 'Eu sou o '.$nome.' e possuo '.$idade.' anos.';

<?php
//TRABALHANDO COM VARIÁVEIS
$nome = 'Fabricio';
$idade = '36';
echo 'Eu sou o '.$nome.' e possuo '.$idade.' anos.';
?>

Na figura abaixo é exibido a seguinte frase:

'Eu sou o Fabricio e possuo 36 anos.'



Operações Aritméticas em PHP

Símbolo
Função
Exemplo
=
Atribuição
$n1 = $n2
+
Adição
$n1 + $n2
-
Subtração
$n1 - $n2
*
Multiplicação
$n1 * $n2
/
Divisão
$n1 / $n2
%
Resto da divisão
$n1 % $n2

Vamos digitar o exemplo abaixo, para exemplificar a utilização das operações básicas da matemática no PHP, vamos salvar com o nome de 'terceiro.php' e após vamos exibi-lo no navegador para entender as mesmas.

<?php
//TRABAHANDO DO VARIAVEIS COM ATRIBUIÇÃO DA VALORES
$n1 = '2';
$n2 = '3';
echo 'O primeiro valor: '.$n1;
echo '<br>';
echo 'O segundo valor: '.$n2;
echo '<br>';
echo $n1 + $n2;
echo '<br>';
echo $n2 - $n1;
echo '<br>';
echo $n1 - $n2;
echo '<br>';
echo $n1 * $n2;
echo '<br>';
echo $n2 / $n1;
echo '<br>';
echo $n2 % $n1;
echo '<br>';
echo pow($n2,$n1);
?>

Na imagem abaixo são mostradas as saídas das operações aritméticas em PHP.

  1. Na primeira linha e segunda são exibidos os valores de $n1 e $n2, 2 e 3;
  2. Na terceira a soma de $n1 + $n2, que é 5;
  3. Na quarta a subtração de $n1 - $n2, que é 1;
  4. Na quinta a subtração de $n2 - $n1, que é -1;
  5. Na sexta a multiplicação de $n1 * $n2, que é 6;
  6. Na sétima a divisão de $n1 / $n2, que é 1.5;
  7. Na oitava o resto da divisão de $n2 % $n1, que é 1;
  8. E na nona o exponenciação de pow($n2,$n1), que é 9.
Para começar acho que está bom, até o próximo...
Abraços..