이 글에서는 주로 PHP에서의 문자열 역순 구현 방법을 소개합니다. strrev 함수, 이등분 방법, 루프 방법, 재귀 방법 및 기타 일반적으로 사용되는 문자열 역순 연산 구현 기술을 예제 형식으로 요약하고 분석합니다. 참고하시면 됩니다
자세한 내용은 다음과 같습니다.
문자열의 역순에 관해서는 PHP 함수 strrev()를 사용한 가장 간단한 테스트 코드는 다음과 같습니다.
header('Content-type: text/html; charset=utf-8'); $str = implode('', range(9, 0)); print '< p><strong>Before reversed: </strong>'.$str.'< /p>'; print '< p>< strong>After reversed: < /strong>'.strrev($str).'< /p>'; /* 输出如下: Before reversed: 9876543210 After reversed: 0123456789 */
빌드된 경우 구현 방법 - PHP 함수 strrev()가 사용되지 않습니까? 여기에는 세 가지 추가 방법(이등분 방법, 루프 방법, 재귀 방법)이 제공되지만 성능 테스트는 수행되지 않습니다.
1. 이분법
/** * 二分法实现字符串逆序排列 * @param string $str 源字符串 * @return string 返回逆序后的字符串 */ function reverse($str='') { $len = strlen($str); //不能使用count或sizeof $mid = floor($len/2); for ($i=0; $i<$mid; $i++) { $temp = $str[$i]; $str[$i] = $str[$len-$i-1]; $str[$len-$i-1] = $temp; } return $str; }
2. 순환법
/** * 循环实现对字符串的逆序排列(效率比二分法低) * @param string $str 源字符串 * @return string 返回逆序后的字符串 */ function reverse($str='') { $result = ''; for ($i=1; $i<=strlen($str); $i++) { $result .= substr($str, -$i, 1); } return $result; }
3.
/** * 递归实现对字符串的逆序排列(效率低) * @param string $str 源字符串 * @return string 返回逆序后的字符串 */ function reverse($str='') { static $result = ''; /* 用堆栈来理解递归调用 */ if (strlen($str) > 0) { reverse(substr($str, 1)); $result .= substr($str, 0, 1); //此句必须放在上一语句之后 } return $result; }
php는 지정된 수의 무작위 문자열
php을 구현합니다. 중국어 strings-utf8 버전
php 검색 문자 문자열에서 0이 아닌 첫 번째 위치를 가로채는 방법에 대한 자세한 설명
위 내용은 PHP 문자열 역순 구현 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!