PHP의 Palindrome을 이해하기 전에 먼저 Palindrome에 대해 공부하겠습니다. Palindrome은 문자열의 원본과 반대가 변경되지 않음을 의미합니다. 이는 숫자의 회문이 문자열을 뒤집어도 원본과 동일하다는 것을 의미합니다. 이는 숫자에도 적용할 수 있습니다.
광고 이 카테고리에서 인기 있는 강좌 PHP 개발자 - 전문 분야 | 8개 코스 시리즈 | 3가지 모의고사무료 소프트웨어 개발 과정 시작
웹 개발, 프로그래밍 언어, 소프트웨어 테스팅 등
예:
입력: 12321
역방향: 12321
입력: 시민
역방향: 시민
문자열이나 숫자가 Palindrome인지 아닌지를 알기 위해 PHP에 내장된 함수를 사용하겠습니다.
회문을 얻는 논리는 다음과 같습니다.
숫자의 회문을 확인하려면 strrev()라는 내장 함수를 사용합니다
PHP의 strrev() 함수 정보: 이 함수는 문자열과 숫자를 모두 입력 문자열로 받아들입니다. 입력 문자열에 대해 역방향을 수행하지만 주어진 문자열을 변경하지는 않습니다. 항상 주어진 문자열의 반대 형식을 반환합니다.
다음 프로그램에는 MADAM이라는 입력 문자열이 있습니다. 이 문자열에는 strrev() 함수가 적용됩니다. 함수를 적용한 후 결과는 정확한 문자열 MADAM을 반환합니다. 그런 다음 입력된 문자열과 반전된 문자열이 동일한지 여부를 확인하기 위해 조건을 검사합니다.
코드:
<?php // example to get the palindrome of a string using built in function //input string is MADAM $input = "MADAM"; echo '<br> Input String '. $input; //reverse of input string - MADAM - using strrev $reverse = strrev($input); echo '<br> Ouput String '. $reverse; //condition to check if the input and the reverse of the string is equal or not if($input == $reverse) { echo '<br> '.$input.' is a palindrome'; } else { echo '<br>'.$input.' is not a palindrome'; } ?>
출력:
위 프로그램에서 볼 수 있듯이 입력 문자열은 회문입니다. 이제 동일한 strrev 함수를 숫자에 적용하여 입력 숫자가 회문인지 아닌지 확인해 보겠습니다.
코드:
<?php //example to get the palindrome of a number using built in function // input string is 1234321 $input = 1234321; echo '<br>'.'Input string '. $input; //reverse of input string using strrev $reverse = strrev($input); echo '<br>'.'Reverse string '.$reverse; //condition to check if the input and the reverse of the string is equal or not if($input == $reverse) { echo '<br>'.$input.' is a palindrome'; } else { echo '<br>'.$input.' is not a palindrome'; } ?>
출력:
아래 프로그램에서는 Palindrome_Function이라는 다른 함수 내에 정의된 strrev() 내장 함수를 사용했습니다. 따라서 이 함수를 호출하여 문자열을 반전시키면 strrev() 함수를 사용하여 입력 문자열에 대해 반전을 수행합니다. 다음과 같은 방법으로 동일한 프로그램을 완료할 수 있습니다.
코드:
<?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'; } ?>
출력:
아래 프로그램에서는 회문수가 아닌 숫자를 입력하여 결과를 살펴보겠습니다.
코드:
<?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'; } ?>
출력:
다음은 입력 텍스트 상자가 포함된 양식이 있는 프로그램입니다. 숫자를 입력하고 양식을 제출하면 입력된 숫자가 회문인지 아닌지를 알려주는 결과가 나옵니다.
코드:
<html> <head> <title>Palindrome Program</title> </head> <body> <form method="post" action="program1.php"> <input type="text" name="number" value="" /> <input type="submit" name="submit" value="Submit" /> </form> <?php 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'; } } ?> </body> </html>
출력:
아래 프로그램에서는 strrev() 함수를 사용하지 않고 숫자의 역순을 구하는 다음 단계를 따릅니다.
여기에서는 while 루프를 사용합니다:
코드:
<?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 "<br>"." $input_number is a Palindrome"; //if equal show $input is palindrome number } else { echo "<br>"."$input_number is not a Palindrome"; //if not equal show $input is not a palindrome number } ?>
출력:
이 글에서는 회문이 무엇인지, 숫자가 회문인지 아닌지 확인하는 방법, 입력 문자열이 회문인지 여부를 확인하는 방법에 대해 설명합니다. 이 글이 도움이 되었기를 바랍니다.
위 내용은 PHP의 회문의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!