Definição de Palíndromo

Antes de entender, o Palindrome em PHP, primeiro estudaremos o Palindrome. Palíndromo significa que não há alteração no original e no verso da sequência. Significa que o palíndromo de um número é igual ao original, mesmo após o reverso da sequência. Isso também pode ser aplicado aos números.

Por exemplo:

Entrada: 12321
Reverso: 12321

Entrada: Civic
Reverso: Civic

Para saber se uma string ou um número é palíndromo ou não, usaremos a função embutida no PHP.

Palindrome Logic

A lógica por trás de um palíndromo é a seguinte:

  1. Obter um número de entrada ou string.
  2. Obtenha o inverso do número de entrada ou da string usando a função interna.
  3. Faça a comparação dos números ou cadeias - a entrada e o número ou cadeia reversa.
  4. Se a entrada e o reverso forem iguais, significa que o número ou a sequência é um palíndromo.

Como verificar o Palindrome em PHP?

Para verificar o palíndromo de um número, usaremos a função interna chamada strrev ()

Sobre a função strrev () no PHP: Esta função aceita tanto a string quanto os números como a string de entrada. Ele executa o inverso na sequência de entrada, mas não altera a sequência especificada. Ele sempre retorna a forma invertida da sequência especificada.

Exemplo 1

No programa a seguir, temos uma string de entrada MADAM, e a função strrev () é aplicada. O resultado após a aplicação da função retorna a mesma string MADAM; então, uma condição é verificada se a entrada e a string invertida são iguais ou não.

Código:

<_?php
// example to get the palindrome of a string using built in function
//input string is MADAM
$input = "MADAM";
echo '
Input String '. $input;
//reverse of input string - MADAM - using strrev
$reverse = strrev($input);
echo '
Ouput String '. $reverse;
//condition to check if the input and the reverse of the string is equal or not
if($input == $reverse) (
echo '
'.$input.' is a palindrome';
)
else (
echo '
'.$input.' is not a palindrome';
)
?>

Resultado:

Exemplo 2

Como vimos no programa acima, a string de entrada é um palíndromo. Vamos aplicar a mesma função strrev em um número agora para verificar se o número de entrada é um palíndromo ou não.

Código :

<_?php
//example to get the palindrome of a number using built in function
// input string is 1234321
$input = 1234321;
echo '
'.'Input string '. $input;
//reverse of input string using strrev
$reverse = strrev($input);
echo '
'.'Reverse string '.$reverse;
//condition to check if the input and the reverse of the string is equal or not
if($input == $reverse) (
echo '
'.$input.' is a palindrome';
)
else (
echo '
'.$input.' is not a palindrome';
)
?>

Resultado:

Exemplo 3

No programa abaixo, usamos a função interna strrev () definida em uma função diferente chamada Palindrome_Function. Portanto, quando essa função é chamada para reverter uma string, ela realmente executa a reversão na string de entrada usando a função strrev (). O mesmo programa acima pode ser feito da seguinte maneira.

Código :

<_?php
//example to get the palindrome of a number using built in function
function Palindrome_Function($input) (
// applying strrev() function to input string
$reverse = strrev($input);
//condition to check if reverse and input strings are same or not
if($reverse == $input) (
return true;
)
else
(
return false;
)
)
$input = 1995991;
//calling the reverse function
$result = Palindrome_Function($input);
if($result == TRUE) (
echo $input.' is palindrome';
)
else
(
echo $input.' is not palindrome';
)
?>

Resultado:

Exemplo 4

No programa abaixo, inseriremos um número que não é o número do palíndromo e veremos o resultado.

Código:

<_?php
//example to get the palindrome of a number using built in function
function Palindrome_Function($input) (
$reverse = strrev($input);
if($reverse == $input) (
return true;
)
else
(
return false;
)
)
$input = 13241;
$result = Palindrome_Function($input);
if($result == TRUE) (
echo $input.' is palindrome';
)
else
(
echo $input.' is not palindrome';
)
?>

Saída :

Exemplo 5

A seguir, é o programa em que temos um formulário contendo uma caixa de texto de entrada. Ao inserir um número e enviar o formulário, temos o resultado que nos informa sobre o número de entrada, seja um palíndromo ou não.

Código :


Palindrome Program



if(isset($_POST('number'))) (
$input = $_POST('number');
$reverse = strrev($input);
if($reverse == $input) (
echo $input . 'is a palindrome';
)
else(
echo $input. 'is not a palindrome';
)
)
?>
<_?php

Palindrome Program



if(isset($_POST('number'))) (
$input = $_POST('number');
$reverse = strrev($input);
if($reverse == $input) (
echo $input . 'is a palindrome';
)
else(
echo $input. 'is not a palindrome';
)
)
?>

Saída :

No programa abaixo, temos as seguintes etapas a seguir para obter o inverso de um número sem o uso da função strrev ().

Vamos usar o loop while aqui:

  1. Obter um número de entrada
  2. Divida o número por 10 para obter o restante
  3. Adicione o restante à nova variável, multiplicada por 10
  4. Divida o número por 10.

Código:

<_?php
//example to check if number is palindrome or not without using function only for numbers
//defining the palindrome function
function Palindrome_Function($input) (
$number = $input;
$sum = 0;
//using while loop to get the reverse of the input number
while(floor($number))
(
$remainder = $number % 10;
$sum = $sum * 10 + $remainder;
$number = $number / 10;
)
if($sum == $input) (
return true;
)
else (
return false;
)
)
//passing the input number
$input_number = 1546451;
//calling the Palindrome_Function
$result = Palindrome_Function($input_number);
//check if the input is equal to output of palindrome_function
if($result)(
echo "
"." $input_number is a Palindrome"; //if equal show $input is palindrome number
) else (
echo "
"."$input_number is not a Palindrome"; //if not equal show $input is not a palindrome number
)
?>

Resultado:

Conclusão - Palindrome em PHP

Neste artigo, é explicado com exemplos do que é um palíndromo, como descobrimos se um número é um palíndromo ou não e como saber se a sequência de entrada é um palíndromo ou não. Espero que este artigo tenha sido útil.

Artigos recomendados

Este é um guia para o Palindrome em PHP. Aqui discutimos Como verificar o Palindrome com vários exemplos e a lógica e a codificação do Palindrome. Você também pode consultar nossos outros artigos relacionados para saber mais.

  1. Compilador PHP
  2. Palíndromo em Python
  3. Constantes PHP
  4. Palíndromo no programa C
  5. Fatorial em PHP
  6. Introdução ao Palindrome em Java
  7. Palíndromo em C # (lógica, exemplos)
  8. Constantes mágicas do PHP
  9. Palíndromo em C ++