PHP | Cheque palíndromo

En este artículo, aprenderemos cómo verificar si un número y una string son palíndromos o no en PHP. Se dice que un número o string es un palíndromo si permanece igual incluso después de invertir los dígitos o las letras respectivamente.
Ejemplos de número palíndromo: 
 

Input : 1441
Output : Palindrome
Explanation: Reversing 1441 will also get 1441

Input : 12521
Output : Palindrome
Explanation remains same

Verifique el número de Palindrome

Aquí simplemente hemos usado la forma iterativa para verificar el número de palíndromo. Cada dígito se extrae en una iteración y se forma el número inverso y, finalmente, se comprueba si es el mismo que el número original. 
 

PHP

<?php
// PHP code to check for Palindrome number in PHP
// Function to check for Palindrome
function Palindrome($number){ 
    $temp = $number; 
    $new = 0; 
    while (floor($temp)) { 
        $d = $temp % 10; 
        $new = $new * 10 + $d; 
        $temp = $temp/10; 
    } 
    if ($new == $number){ 
        return 1; 
    }
    else{
        return 0;
    }
} 
 
// Driver Code
$original = 1441;
if (Palindrome($original)){ 
    echo "Palindrome"; 
}
else { 
echo "Not a Palindrome"; 
}
 
?> 

Producción: 
 

Palindrome

Verifique la string Palindrome

Ejemplos de Palindrome String: 
 

Input : "MALAYALAM"
Output : Palindrome
Explanation: Reversing "MALAYALAM" will also get "MALAYALAM"

Input : "14441"
Output : Palindrome
Explanation remains same

Método 1: Usar strrev() 
La función strrev() se usa en PHP para invertir una string. Simplemente podemos usar este método para invertir la string y hacerla coincidir con el valor anterior. Si es una coincidencia, entonces la string es palíndromo, de lo contrario no lo es. 
Ejemplo: 
 

PHP

<?php
// PHP code to check for Palindrome string in PHP
// Using strrev()
function Palindrome($string){ 
    if (strrev($string) == $string){ 
        return 1; 
    }
    else{
        return 0;
    }
} 
 
// Driver Code
$original = "DAD";
if(Palindrome($original)){ 
    echo "Palindrome"; 
}
else { 
echo "Not a Palindrome"; 
}
?> 

Producción: 
 

Palindrome

Método 2: forma recursiva usando substr() 
El método substr() se usa para devolver una parte de una string, denominada substring. Usando este método, hay una forma recursiva de verificar Palindrome o no. En este método no se forma ninguna string nueva y la string original se modifica en cada llamada recursiva. 
Ejemplo:
 

PHP

<?php
// PHP code to check for Palindrome string in PHP
// Recursive way using substr()
function Palindrome($string){
     
    // Base condition to end the recursive process
    if ((strlen($string) == 1) || (strlen($string) == 0)){
        echo "Palindrome";
    }
 
    else{
         
        // First character is compared with the last one
        if (substr($string,0,1) == substr($string,(strlen($string) - 1),1)){
             
            // Checked letters are discarded and passed for next call
            return Palindrome(substr($string,1,strlen($string) -2));
        }
        else{
            echo " Not a Palindrome"; }
    }
}
 
$string = "MALAYALAM";
Palindrome($string);
?> 

Producción: 
 

Palindrome

Funcionamiento: 
el primer carácter se compara con el último carácter de la string durante cada llamada recursiva y, si coincide, ambos caracteres se descartan durante la siguiente llamada. Esto continúa hasta que la longitud de la string se reduce a 0 o 1. En el siguiente ejemplo donde se toma la palabra «MALAYALAM», veamos el funcionamiento. 
En el primer paso se comparan ambas M’s en ambas, al final. Dado que coincide, ambos se descartan y la siguiente string que se pasa es «ALAYALA». Nuevamente, tanto la A coincidió en ambos extremos, por lo que la siguiente string que se pasará es «LAYAL». Esto continúa hasta que solo queda «Y».
 

Publicación traducida automáticamente

Artículo escrito por Chinmoy Lenka y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *