Heim >Backend-Entwicklung >PHP-Tutorial >Wie überprüfe ich, ob Zahlen und Zeichenfolgen in PHP Palindrome sind? (Codebeispiel)

Wie überprüfe ich, ob Zahlen und Zeichenfolgen in PHP Palindrome sind? (Codebeispiel)

青灯夜游
青灯夜游Original
2019-04-03 09:04:143603Durchsuche

Wenn eine Zahl oder Zeichenfolge nach dem Umkehren der Zahlen bzw. Buchstaben gleich bleibt, spricht man von einer Palindromstruktur. Wie kann man also überprüfen, ob Zahlen und Zeichenfolgen Palindrome sind? Der folgende Artikel zeigt Ihnen, wie Sie in PHP überprüfen können, ob Zahlen und Zeichenfolgen Palindromstrukturen sind.

Wie überprüfe ich, ob Zahlen und Zeichenfolgen in PHP Palindrome sind? (Codebeispiel)

1. Überprüfen Sie die Anzahl der Palindrome

Hier verwenden wir einfach die Iterationsmethode, um die zu überprüfen Palindromzahl. Jede Zahl wird in Iterationen extrahiert und in ihre Gegenzahl umgewandelt. Anschließend wird überprüft, ob sie mit der ursprünglichen Zahl übereinstimmt.

Sehen wir uns die Implementierungsmethode anhand von Codebeispielen an.

<?php 
header("content-type:text/html;charset=utf-8");
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; 
    } 
}   
  
$original = 1441;  
if (Palindrome($original)){   
    echo $original."是回文数";   
}  
else {   
echo $original."不是回文数";  
} 
  
?>

Ausgabe:

Wie überprüfe ich, ob Zahlen und Zeichenfolgen in PHP Palindrome sind? (Codebeispiel)

2. Überprüfen Sie die Palindromzeichenfolge

Methode 1: Verwendung von strrev()

Die strrev()-Methode wird in PHP verwendet, um einen String umzukehren. Wir können diese Methode einfach verwenden, um eine Zeichenfolge umzukehren und sie mit der Zeichenfolge abzugleichen, bevor sie umgekehrt wurde. Wenn die Übereinstimmung erfolgreich ist, handelt es sich bei der Zeichenfolge um ein Palindrom, andernfalls nicht.

Sehen wir uns die Implementierungsmethode anhand von Codebeispielen an.

<?php 
header("content-type:text/html;charset=utf-8");
function Palindrome($string){   
    if (strrev($string) == $string){   
        return 1;   
    } 
    else{ 
        return 0; 
    } 
}   
  
$original = "hgbgbgh"; 
if (Palindrome($original)){   
    echo $original."是回文字符串";   
}  
else {   
echo $original."不是回文字符串";  
} 
  
?>

Ausgabe:

Wie überprüfe ich, ob Zahlen und Zeichenfolgen in PHP Palindrome sind? (Codebeispiel)

Methode 2: Rekursive Methode mit substr()

substr The ()-Methode wird verwendet, um einen Teil einer Zeichenfolge zurückzugeben, die als Teilzeichenfolge bezeichnet wird. Mit der Methode substr() können Sie rekursiv überprüfen, ob ein String ein Palindrom ist.

Hinweis: In der Methode substr() wird kein neuer String gebildet und der ursprüngliche String wird bei jedem rekursiven Aufruf geändert.

Prinzip: Lassen Sie bei jedem rekursiven Aufruf das erste Zeichen mit dem letzten Zeichen der Zeichenfolge übereinstimmen. Wenn sie übereinstimmen, verwerfen Sie diese beiden Zeichen beim nächsten Aufruf. Dies wird so lange fortgesetzt, bis die Länge der Zeichenfolge auf 0 oder 1 reduziert wird. Dann ist die Zeichenfolge ein Palindrom.

Sehen wir uns die Implementierungsmethode anhand von Codebeispielen an.

<?php 
header("content-type:text/html;charset=utf-8");
function Palindrome($string){
	//结束递归 
    if ((strlen($string) == 1) || (strlen($string) == 0)){ 
        echo "回文字符串"; 
    } 
  
    else{ 
          
        // 第一个字符与最后一个字符比较
        if (substr($string,0,1) == substr($string,(strlen($string) - 1),1)){ 
              
            // 选中的字母将被丢弃并传递给下一个字符串
            return Palindrome(substr($string,1,strlen($string) -2)); 
        } 
        else{  
            echo "不是回文字符串"; } 
    } 
} 
  
$string = "MALAYALAM"; 
Palindrome($string); 
  
?>

Ausgabe:

回文字符串

Beispielbeschreibung:

Um im obigen Beispiel zu überprüfen, ob die Zeichenfolge „MALAYALAM“ ein Palindrom ist, sehen wir uns an wie es funktioniert.

Im ersten Schritt sind beide M und der Vergleich endet. Da es übereinstimmt, werden beide verworfen; die nächste zu übergebende Zeichenfolge ist „ALAYALA“. Auch hier stimmen die beiden A's an beiden Enden überein, sodass die nächste zu übergebende Zeichenfolge „LAYAL“ ist. Dies wird so lange fortgesetzt, bis nur noch „Y“ übrig bleibt. Daher ist die Zeichenfolge „MALAYALAM“ ein Palindrom.

Empfohlene Video-Tutorials: „PHP-Tutorial

Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Lernen aller hilfreich sein wird. Weitere spannende Inhalte finden Sie in den entsprechenden Tutorial-Kolumnen auf der chinesischen PHP-Website! ! !

Das obige ist der detaillierte Inhalt vonWie überprüfe ich, ob Zahlen und Zeichenfolgen in PHP Palindrome sind? (Codebeispiel). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn