2012-03-22 3 views
0

아무 이유없이 설명해 주시겠습니까 $property'name' 이외의 기능은 null 안에 있습니까? var_dump으로 확인해 보니 이것이 왜 작동하지 않는지 알 수 없습니다. 세계적인 키워드가 들어 있지 않습니까?글로벌 작동하지 않음/속성 값을 기준으로 정렬하는 방법

$property = $_GET['property']; // 'name' 
function cmp($a, $b) 
{ 
    global $property; 
    return strnatcmp($a->$property, $b->$property); 
} 
usort($files, 'cmp'); 

또는이 방법이 더 좋습니까? 이 질문에 밖으로

답변

1

확인 : Errors when using array_push -- "First argument should be an array"

코드의 제공 조각이 (또는 파일이 다른 기능을 포함) 다른 함수 내에서 호출되는 경우, 다음 $ 속성은 글로벌되지 않습니다, 따라서

를 통해 검색 할 수 없습니다
global $property; 

$ _GET이 이미 전역 적이기 때문에 항상 더 간단한 작업을 수행 할 수 있습니다.

function cmp($a, $b) 
{ 
    $property = $_GET['property']; 
    return strnatcmp($a->property , $b->$property); 
} 
usort($files, 'cmp'); 
관련 문제