2011-01-21 4 views
0

가능한 중복 :
Anonymous functions pre PHP 5.3.0PHP 익명 기능

안녕하세요,

내가 할 수있는 방법

$ar = array_filter($ar, function($el) { 
    $search = 'New York'; 
    $name = $ar['name']; 
    $potentialNumber = substr($name, strlen($search)); 
    return ((substr($name, 0, strlen($search)) == $search) && // starts with NY 
      ($potentialNumber == '' || is_numeric($potentialNumber)); // [0-9]* 
}); 

PHP 5.3 전에?

+0

오전해야 : //stackoverflow.com/questions/3694620/anonymous-functions-pre-php-5-3-0) – Gordon

+0

* (참고) * [PHP 언어의 콜백] (http://de2.php.net/manual /en/language.pseudo-types.php#language.types.callback) – Gordon

답변

0

분별 솔루션은 함수를 정의하는 것, 그래서 통해서 (람다 기능을 모방 create_function를 사용하는 것 당신이 현재하고있는 기능/방법의 지역 범위 내에서 create_function 또는 보통)의 사용

0

그냥 콜백을 사용합니다. 대신 글로벌 코드의 클래스에 있다면

$ar = array_filter($ar, "myFunction"); 

function myFunction($el) { 
    $search = 'New York'; 
    $name = $ar['name']; 
    $potentialNumber = substr($name, strlen($search)); 
    return ((substr($name, 0, strlen($search)) == $search) && // starts with NY 
      ($potentialNumber == '' || is_numeric($potentialNumber)); // [0-9]* 
} 

, array_filter에 전달 된 콜백은 HTTP closevotes 만의 명확한 중복 [익명 기능을 미리 PHP 5.3.0] (중 array(this, 'myFunction')