A função PHP isset() vem sendo utilizada desde a versão 4 da linguagem. Como veremos, é um recurso bastante necessário no desenvolvimento de inúmeros tipos de projetos e aplicações web. As pessoas programadoras mais experientes entendem muito bem a importância de sabermos se uma variável já foi iniciada antes de usá-la — ainda mais em sistemas complexos e com requisitos de segurança.
Já para os iniciantes em PHP, o uso e a importância da função isset() pode não ser tão óbvia, talvez, por desconhecimento dessa função, de sua implementação ou, até mesmo, de ambas. Mesmo com a necessidade de verificação de existência das variáveis sendo imprescindível em sistemas mais robustos, é bom dar atenção ao seu uso desde o começo — visando a manter as boas práticas.
Sabendo dessas questões, trazemos este guia sobre a função isset() e seus diversos usos práticos na linguagem PHP. Abordaremos as questões teóricas de maneira simples, mas completa o suficiente para você compreender os principais aspectos desse recurso. Os tópicos que você encontrará, a seguir, são:
- O que é a função PHP isset e para que serve?
- Quando é necessário implementar a função isset() no PHP?
- Qual a sintaxe da função PHP isset?
- Quais as diferenças entre isset(), empty() e is_null()?
- Como usar, na prática? Veja 4 exemplos de uso do PHP isset
Vamos lá?
O que é a função PHP isset e para que serve?
Para compreendermos melhor sobre a implementação da função isset(), em PHP, ajudará muito saber, antes, o significado dessa expressão proveniente da língua inglesa. “Is set” pode ser traduzido como “isso é definido”. A função isset() é utilizada para a checagem de determinada variável quando precisamos saber se ela está vazia ou já está configurada com algum valor.
A resposta dessa função será booleana, ou seja, sempre compreenderá entre verdadeiro ou falso. Importante ressaltar, também, que em caso de a variável ser nula — não existir ou ser declarada como o valor “null” — o valor retornado da função isset() sempre será o booleano “false”, em vez de “true”. Por exemplo:
<?php
$var1;
var_dump(isset($var1));
?>
Teremos a seguinte impressão no console:
bool(false)
Mas isso não acontece se a variável é declarada com o valor de 0. Mesmo sendo um valor nulo, ainda é um valor declarado para o isset(). Veja esse exemplo:
<?php
$var_a;
// Verdadeiro, pois o valor declarado é 0.
if (isset($var_a)) {
echo "A variável A está declarada — seu valor é 0.";
} else {
echo "A variável A NÃO está declarada.";
}
?>
Note que, nesse pequeno programa, pedimos para que a função isset() verifique se a nossa variável está declarada com algum valor. A saída no console será essa, já que a variável “var_a” satisfaz essa condição — é verdadeira, portanto:
A variável A está declarada — seu valor é 0.
Use esse código em sua IDE ou em algum editor online em PHP. Note que, se apagarmos o valor da variável (ou a identificarmos como “NULL”), a resposta impressa no console será diferente!
Quando é necessário implementar a função isset() no PHP?
De maneira resumida, a função PHP isset() é utilizada quando, durante o desenvolvimento de nossos sistemas, precisamos saber se ela já foi previamente definida em algum momento no código. Usar esse tipo de verificação é considerado uma boa prática entre as pessoas desenvolvedoras de software — a validação de dados é algo muito importante quando trabalhamos com aplicações para a web.
A função unset()
Uma função que é muito parecida com a utilizada para a verificação das variáveis é a unset(). Com ela, não fazemos a verificação, mas reiniciamos o valor de dada variável em nosso código. Confira um exemplo de implementação da função unset() e seu funcionamento:
<?php
$var_a = 1;
unset($var_a);
if (isset($var_a)) {
echo "A variável A está declarada — seu valor é 1.";
} else {
echo "A variável A NÃO está declarada.";
}
?>
Perceba que declaramos a variável var_a com o valor 1 e, em seguida, usamos a função unset() para apagar o valor — o que faz nosso pequeno programa retornar como falso, pois não há mais valor declarado para essa variável. Portanto, tanto o isset() quanto o unsset() são usados na verificação e manipulação de variáveis durante a implementação de sistemas em que isso faça necessário.
Além das questões de segurança a que precisamos dar atenção, envolvidas durante o desenvolvimento de sistemas web, podemos também citar a importância da verificação de informações relevantes — qualquer dado de variável que seja essencial para um bom funcionamento do software que escrevemos.
Isso inclui saber se um endereço de e-mail ou telefone foi informado ou não, dando um exemplo bem simples. Com a existência dessas informações verificadas, o nosso sistema poderá dar continuidade às tarefas que dependem desses dados para funcionar. Veremos um exemplo dessa aplicação, um pouco mais adiante.
Qual a sintaxe da função PHP isset?
A sintaxe da função isset() é bastante simples para ser implementada. Ela pede apenas um parâmetro obrigatório, o qual seria a variável que queremos verificar a existência. Vejamos:
isset ($variável, $variável2, ...)
Como você deve ter percebido, é possível realizar a verificação de múltiplas variáveis na mesma função.
Quais as diferenças entre isset(), empty() e is_null()?
Além da função isset(), o PHP disponibiliza outras para verificarmos as variáveis em nossos softwares. Algumas vezes, durante o desenvolvimento de uma ferramenta, será necessário que identifiquemos se a dada variável é null ou zero — e vimos que, se optarmos pelo uso do isset(), isso não será possível, pois o retorno será o mesmo, o valor booleano “false”.
Então, nesses casos, podemos usar a função empty() e is_null(). Com o primeiro método, a função empty(), saberemos se a variável que verificamos é vazia ou não. É importante lembrar que, se a variável tiver o valor definido como “false”, também será considerada vazia. Vejamos um exemplo do uso de empty():
<?php
$variavel_a = false;
$variavel_1;
if (empty($variavel1));{
echo "A variável A está vazia. <br>";
} if (empty($variavel1));{
echo "A variável 1 está vazia";
}
?>
Receberemos a seguinte impressão no console:
A variável A está vazia.
A variável 1 está vazia
Lembre-se de que você pode tentar trocar as variáveis (ou até adicionar outras) para melhorar sua percepção sobre o funcionamento da função empty().
Já a função is_null() é bastante semelhante em relação à função empty() — a diferença é que ela não verifica se a variável está vazia, mas sim, se contém um valor nulo (NULL) ou não. Nos casos afirmativos, em que a variável é representada pelo valor null, o retorno do valor será o booleano “true”.
Em caso negativo — seja qualquer outro valor diferente de null, a resposta será o booleano “false”. Acompanhe um exemplo de uso da função is_null():
<?php
$a = null;
if (is_null($a)) {
echo "A variável 'a' é null.<br>";
}
?>
É um exemplo bem simples da implementação da função is_null(), em que vemos o retorno true devido à verificação positiva do valor null da variável. O console nos retornará o seguinte:
A variável 'a' é null.
Como usar, na prática? Veja 4 exemplos de uso do PHP isset
Veremos, nesta parte, mais alguns exemplos de sistemas com códigos bem simples, para auxiliar você a compreender ainda melhor sobre a função PHP isset() aplicada na prática. É muito interessante usar uma IDE ou um servidor local no seu computador para replicar esses conceitos — é bem mais fácil aprender um código quando fazemos alterações nele e reparamos em seu comportamento.
Então, prepare-se e vamos aos exemplos!
1. Usando a função isset() em arrays
Nesse primeiro exemplo, mostraremos como é possível aplicarmos a função isset() em matrizes associativas. Confira:
<?php
$var_array = array ('var_teste_1' => 1, 'var_test_2' => NULL);
var_dump( isset ($var_array['var_teste_1']) );
// será TRUE
var_dump( isset ($var_array['var_test_2']) );
// será FALSE
var_dump( array_key_exists('var_test_2', $var_array) );
// será TRUE
?>
Ao pedirmos uma representação estruturada das variáveis por meio da função var_dump(), repare que é realizada a verificação, e ele retorna true e false, respectivamente, para as variáveis que passamos. Na quinta linha, queremos realizar a verificação do valor null da variável, retornada como verdadeiro pelo método isset. O resultado impresso no console será igual a:
bool(true)
bool(false)
bool(true)
2. Checando se uma informação existe para ser utilizada posteriormente
Nesse exemplo, usaremos o método de verificação de variáveis isset para nos certificarmos de que a variável que identifica um usuário contenha um dado valor. Em outras palavras, fazemos uma verificação — se a variável está armazenada e acessível para utilização pelo sistema. Dê atenção ao seguinte exemplo:
<?php
$user = 'João da Silva';
$_SESSION['userID'] = $user;
if (isset($_SESSION['userID'])) {
echo " Seja bem-vindo, $_SESSION[userID] ";
}
?>
Aqui, o funcionamento do método isset acontece assim: ele verifica se a variável “userID” existe. Em caso afirmativo, ele utiliza esse dado para completar as informações necessárias para a tarefa solicitada, que, nesse caso, seria usar a variável userID — o nome usuário — e imprimi-la na tela para leitura. A saída desse código mostrado seria:
Seja bem-vindo, João da Silva
3. Utilizando o PHP isset com IF e ELSE
Nesse pequeno exemplo, exploraremos a função isset() aliada ao uso do if e do else, e como podemos utilizar a verificação de valores contidos em variáveis para a tomada de decisão do sistema. Confira, logo abaixo:
<?php
$primeira_var_definida = 0;
$segunda_var_null = null;
$terceira_var_sem_valor;
// verificando se a primeira variável está definida:
if (isset($primeira_var_definida)) {
echo "A primeira variável está definida com o valor de 0.<br>";
} else {
echo "A primeira variável não está definida.<br>";
}
// Verificando se a segunda variável está definida:
if (isset($segunda_var_null)) {
echo "A segunda variável está definida";
} else {
echo "A segunda variável tem o valor NULL — portanto, não está definida.<br>";
}
// Verificando se a terceira variável está definida:
if (isset($terceira_var_sem_valor)) {
echo "A terceira variável está definida";
} else {
echo "A segunda variável não está definida — não há valor declarado.<br>";
}
?>
Use esse exemplo alterando as variáveis para que você perceba, na prática, como é realizada a decisão pelo script do que será impresso na tela, a partir da verificação das variáveis por meio do método isset. Esse código que apresentamos terá a seguinte saída no console:
A primeira variável está definida com o valor de 0.
A segunda variável tem o valor NULL — portanto, não está definida.
A segunda variável não está definida — não há valor declarado.
4. Utilizando o isset em um formulário HTML
Agora, trazemos a utilização da função isset() para a criação de um formulário bem simples em HTML. A função, como podemos perceber, verifica se os dados foram inseridos pelo usuário e, sem seguida, retorna um agradecimento pelo envio das informações em caso positivo. Confira:
<!DOCTYPE html>
<html>
<head>
<title>Formulário exemplo — usando a função isset()</title>
</head>
<body>
<form method="post">
<label for="name">NOME:</label>
<input type="text" name="name" class="name">
<label for="tel">CELULAR:</label>
<input type="number" name="tel" class="tel">
<input type="submit" name="envio" value="Envie agora!">
</form>
<?php
if(isset($_POST['envio'])){
echo "Seu formulário já foi enviado, obrigado!";
}
?>
</body>
</html>
Nosso formulário ficará dessa maneira:
[IMAGEM NO UPLOAD – área de login, NOME e CELULAR]
O desenvolvimento de aplicações usando a linguagem PHP oferece diversos benefícios e vantagens para as pessoas da área de tecnologia envolvidas no processo. É uma linguagem de programação madura, robusta e gratuita. Dessa forma, elementos como a função PHP isset() existem para oferecer ainda mais possibilidades na idealização e no desenvolvimento das mais variadas ferramentas para o mundo digital.
Usamos alguns exemplos para mostrar de maneira didática como aplicar esses conhecimentos. Compreendemos conceitos na prática e de forma dinâmica, assim como os principais detalhes sobre a implementação das funções PHP isset(), unset(), is_null() e empty(), disponibilizando às pessoas iniciantes na programação uma excelente visão do panorama de como as funções em PHP são implementadas.
Que tal aprender ainda mais sobre a linguagem PHP e outras funções utilizadas nessa e em outras linguagens de programação? Comece sua preparação para o mercado de desenvolvimento digital com a Trybe, agora mesmo, realizando sua inscrição em nosso processo seletivo. Se estiver com alguma dúvida, entre em contato conosco!