2012-12-11 2 views
-1

I의 (a PDO 문을 사용하여 MySQL 데이터베이스에서 모든 결과입니다) 여러 배열, 여기에 예를 들어 하나 있습니다정수에게 있습니다 배열 키를 필터링

Array ([id] => 1 [0] => 1 [name] => HELLO [1] => HELLO) 

난 단지 키를 원하는 을하는 배열 (이 경우 'id'및 'name')이 배열이 아닙니다.

내가 될 것입니다 배열로 끝날 수 있도록 내가 정수가 키를 필터링 할 수 있습니다 어떻게 는

:

Array ([id] => 1 [name] => HELLO) 

(키는 항상 'ID'와 '이름이 될 수 없습니다 ', 또는 이름 번호 또는 배열 키의 같은 수의)

+4

은 어쩌면 당신은 PDO와 함께이 문제를 해결할 수 있습니다. '$ stm-> fetch (PDO :: FETCH_ASSOC)를 사용하여; –

+0

배열을 반복하면됩니다. 무엇이 널 멈추게 해? –

답변

4

난 당신이 적절한 플래그를 사용하여 행을 가져 오는이 문제를 해결해야한다고 생각 PDO::FETCH_ASSOC

$sth = $dbh->prepare("SELECT id,name FROM tableName"); 
$sth->execute(); 

$row = $sth->fetch(PDO::FETCH_ASSOC); // use this flag for return only column names 

그것은 할 수없는 경우 :

foreach($array as $k=>$v) { 
    if(filter_var(FILTER_VALIDATE_INT, $k) !== FALSE) { 
     unset($array[$k]); 
    } 
} 
0
$newRow = array(); 
foreach($row as $key => $value) 
    if(is_string($key)) 
     $newRow[$key] = $value;