/ Tecnologia
/ Integração do …
/ 6.3 PHP
6.3 PHP
MongoDB

Para acessar o MongoDB pelo PHP, foi instalada a extensão php-mongodb através do comando:
sudo apt install php-mongodb
Para testar o acesso ao MongoDB pelo PHP, foi criado um script que realiza a mesma consulta do item 5.3 , ou seja, exibe os títulos repetidos dos documentos, ordenados por quantidade e título.
<?php
/**
* @file
* Exibir os títulos repetidos dos documentos,
* ordenados pelo número de vezes que aparecem
* e título.
*
* @author Reficio
*/
// Estabelecer a conexão com o MongoDB
$conn = new MongoDB\Driver\Manager("mongodb://localhost:27017");
// Utilizar a agregação para contar o número de vezes
// que cada título aparece na coleção.
// _id é o campo usado para agrupar a coleção.
// Mostrar só os títulos repetidos, ou seja,
// aqueles que aparecem mais de uma vez.
$comando = new MongoDB\Driver\Command( [
'aggregate' => 'pages',
'pipeline' => [
[ '$group' => [ '_id' => '$title', 'contador' => ['$sum' => 1] ] ],
[ '$match' => [ 'contador' => [ '$gt' => 1 ] ] ],
[ '$sort' => [ 'contador' => 1, '_id' => 1] ],
],
'cursor' => new stdClass,
] );
// Executar o comando criando um cursor para o resultado
$cursor = $conn->executeCommand('reficio', $comando);
// Mostrar o resultado
foreach ($cursor as $documento) {
$doc = get_object_vars($documento);
echo $doc["_id"] . "; " . $doc["contador"] . "<br />\n";
}
?>
O resultado da execução da página está mostrado abaixo:
6.1 Python; 2
6.2 Ruby; 2
6.3 PHP; 2
6.4 C; 2
Avenida Central; 2
Casa da Ópera; 2
Chafariz da Praça Quinze de Novembro; 2
Chafariz da Praça São Salvador; 2
Chafariz das Saracuras; 2
Cidade Nova; 2
Copacabana; 2
Igreja de São Francisco de Paula; 2
Igrejinha de Copacabana; 2
Morro da Viúva; 2
Ouro Preto; 2
Santa Luzia; 2
São Cristóvão; 2
São Roque; 2
São Sebastião; 2
Chafariz das Marrecas; 3
Quinta da Boa Vista; 3
Floresta da Tijuca; 4
Largo da Carioca; 4
Canal do Mangue; 5
Passeio Público; 5
Jardim Botânico do Rio de Janeiro; 7