2012-11-13 5 views
2

다음 코드에 어떤 문제가 있습니까? 나는 린터를 실행하려고 할 때클로저를 사용할 때 이상한 PHP 컴파일러 오류

, 그것은 나를 제공 : 끝과 올바른 구문을 가지고

# PHP Parse error: syntax error, unexpected '}' in test.ph on line 19 

<?php 

    function foo() 
    { 

     return function() 

     { 
      print 'bar'; 
     }  
    } 
+2

클로저를 사용하려면 PHP 5.3 이상이 필요합니다. – Esailija

+4

PHP/5.4에서도 코드가 유효하지 않습니다. @Korikulum이 지적한대로 그는 세미콜론을 놓치고 있습니다. –

+0

모두 동일하다면 클로저를 지원하지 않는 버전에서 PHP 설치가 가능한 PHP 버전을 질문에 지정했다면 유용했을 것입니다. – SDC

답변

5

returnexpression 필요합니다.

// correct syntax 
return EXPRESION; 

// your function 
function foo() 
{ 
    return function() 
    { 
     print 'bar'; 
    }; // You need to add a semicolon. 
} 
관련 문제