Skip to content

Instantly share code, notes, and snippets.

@allanfreitas
Created March 8, 2013 10:49
Show Gist options
  • Select an option

  • Save allanfreitas/5115668 to your computer and use it in GitHub Desktop.

Select an option

Save allanfreitas/5115668 to your computer and use it in GitHub Desktop.
<?php
#phpinfo();
ini_set('max_execution_time', 0);
function execucao(){
$sec = explode(" ",microtime());
$tempo = $sec[1] + $sec[0];
return $tempo;
}
// No inicio da página executamos a função para iniciar o calculo, gerando a variavel $inicio
$inicio = execucao();
$db = "(DESCRIPTION=(ADDRESS=(PROTOCOL = TCP)(HOST =IP)(PORT = 1808))
(CONNECT_DATA=(SERVER = DEDICATED)(SERVICE_NAME=IP))
)";
// Connects to the XE service (i.e. database) on the "localhost" machine
$conn = oci_connect('pmweb_hfl_bi_cons', 'senha', $db);
if (!$conn) {
$e = oci_error();
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}
/*
Sei que é só pra exemplo, mas evite usar "SELECT *"
sempre faça o select dos campos nomeados
o no caso do oracle sempre use, OWNER.tabelaX e não tabelaX diretamente
*/
$stid = oci_parse($conn, 'SELECT * FROM tabelaX WHERE campoX > 200173');
//ALTERACAO FEITA AQUI DO ORIGINAL
/*
o OCI_EXECUTE retorna TRUE OU FALSE
*/
if (oci_execute($stid)){
$i=0;
while ($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) { $i++; }
}else{
//Se retornar FALSE vamos capturar o Real Erro aqui
//Dá uma olhada sobre mais opções do OCI_error
$error = oci_error($stid);
echo $e['message'];
}
// Após a execução da página, geramos a variavel $fim, que nos dará o tempo final da execução da página
$fim = execucao();
echo "Total registros $i <br>";
// Agora é só fazermos a subtração de um pelo outro, e usar o number_format() do PHP para formatar com 6 casas depois da virgula e pronto, mas caso você queira alterar esse número de casas depois da vírgula para mais ou menos, fique a vontade
$tempo = number_format(($fim-$inicio),6);
// Agora á só imprimir o resultado
print "Tempo de Execucao: <b>".$tempo."</b> segundos";
//fim do arquivo
//./caminho/ate/o/arquivo/dentro/do/projeto.php
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment