2012-03-28 5 views
1

마찬가지로 2 개의 문자열을 입력으로 사용할 수있는 함수를 만들고 문자열이 순환하는지 여부를 출력하고 싶습니다. 예를 들어, CAR, ARC, RCA는 자체의 순환 순환입니다.PHP에서 순환 순환 코딩은 어떻게됩니까?

+0

나는 해결책을 찾으려고 노력했는데, 왜 중반이 작동하지 않는지 모르겠다. –

+0

나는 모든 기능을 모른다는 초보자 다.하지만 내 마음은 먼저 우리가 처음 문자를 확인해야한다고 말한다. 마지막 문자와 두 번째 문자는 유사한 기능을 수행합니다. 그러나 그것을 구현하는 방법을 정확히 알지 못한다. –

+0

'for' 루프를 사용해보십시오. – safarov

답변

2
<?php 
function cyclic($first, $second) { 
    for($i = 0, $j = strlen($first); $i < $j; $i ++) { 
     $cycled = substr($first, $i) . substr($first, 0, $i); 
     if($cycled === $second) { 
      return true; 
     } 
    } 
    return false; 
} 

var_dump(cyclic('CAR', 'ARC')); 

정말 간단합니다. 먼저 "순환 버전"을 계산하십시오. 순환 된 버전이 두 번째 문자열과 같으면 완료됩니다. 그렇지 않은 경우 다시 시도하십시오. 아, 그리고 PHP 매뉴얼에서 substr이 어떻게 작동하는지 확인할 수 있습니다.

+0

감사합니다. Berry. –