2012-07-07 7 views
2

를 통해 다음가져 오기 ObjectId가 MongoDB를 PHP를

$name = $user['name'];

하지만, 내가 어떻게 $user['_id']를 얻을 수 있습니다 이름 받기 내 스크립트

$terms = ['username' => $uri]; 
$user = $collection->findOne($terms); 

결과

array (size=4) 
    '_id' => 
    object(MongoId)[29] 
     public '$id' => string '4ff6e96bb0b4599016000006' (length=24) 
    'username' => string 'me' (length=10) 
    'name' => string 'Yes, It's me!' (length=16) 

입니까?

나는

이 도와주세요 작동하지 $user['_id']을 시도합니다. 감사합니다

UPDATE

문제가 $user['_id']->{'$id'}

+1

를 얻기 위해 문자열로 캐스팅 할 필요 추한되지 않습니다 너 사용하고있어? var_dump 출력이 _id가 ObjectId라는 것을 보여 주지만, 여러분의 예제에서 $ user [ '_ id']'는 여전히 '$ id'값 ('4ff6e96bb0b4599016000006')으로 문자열 화되어야합니다. – Stennie

+0

도움이 될 것입니다. http://php.net/manual/en/class.mongoid.php – user985366

답변

6

$user['_id']->{'$id'}과 해결은 단순히 PHP와 MongoDB를 드라이버의 버전은 무엇 ID를 $id = (string)$user['_id'];

관련 문제