MongoDB\Database::command()
이 페이지의 내용
정의
MongoDB\Database::command()
데이터베이스에서 명령 을 실행합니다. 이는 일반적으로 라이브러리 내에 해당 헬퍼 메서드가 없는 명령을 실행하는 데 사용됩니다.
function command( array|object $command, array $options = [] ): MongoDB\Driver\Cursor
매개변수
Return Values
MongoDB\ 드라이버\커서 객체.
오류/예외
MongoDB\Exception\InvalidArgumentException
매개변수 또는 옵션의 구문 분석과 관련된 오류의 경우입니다.
MongoDB\ 드라이버\Exception\RuntimeException 확장 수준의 다른 오류(예: 연결 오류).
예시
대부분의 데이터베이스 명령은 단일 결과 문서 를 반환하며, 이는 반환된 커서 를 배열 로 변환하고 첫 번째 요소에 액세스하여 얻을 수 있습니다. 다음 예시 에서는 핑 명령을 실행하고 결과 문서 를 출력합니다.
$database = (new MongoDB\Client)->test; $cursor = $database->command(['ping' => 1]); var_dump($cursor->toArray()[0]);
출력은 다음과 유사합니다:
object(MongoDB\Model\BSONDocument)#11 (1) { ["storage":"ArrayObject":private]=> array(1) { ["ok"]=> float(1) } }
일부 데이터베이스 명령은 여러 결과가 포함된 커서를 반환합니다. 다음 예제에서는 listCollections 를 실행하여 test
데이터베이스의 각 컬렉션에 대한 결과 문서가 포함된 커서를 반환합니다. 이 예제는 예시입니다. 애플리케이션은 일반적으로 실제로 MongoDB\Database::listCollections()
를 사용합니다.
$database = (new MongoDB\Client)->test; $cursor = $database->command(['listCollections' => 1]); var_dump($cursor->toArray());
출력은 다음과 유사합니다:
array(3) { [0]=> object(MongoDB\Model\BSONDocument)#11 (1) { ["storage":"ArrayObject":private]=> array(2) { ["name"]=> string(11) "restaurants" ["options"]=> object(MongoDB\Model\BSONDocument)#3 (1) { ["storage":"ArrayObject":private]=> array(0) { } } } } [1]=> object(MongoDB\Model\BSONDocument)#13 (1) { ["storage":"ArrayObject":private]=> array(2) { ["name"]=> string(5) "users" ["options"]=> object(MongoDB\Model\BSONDocument)#12 (1) { ["storage":"ArrayObject":private]=> array(0) { } } } } [2]=> object(MongoDB\Model\BSONDocument)#15 (1) { ["storage":"ArrayObject":private]=> array(2) { ["name"]=> string(6) "restos" ["options"]=> object(MongoDB\Model\BSONDocument)#14 (1) { ["storage":"ArrayObject":private]=> array(0) { } } } } }