Obtendo os resultados de pdftotext em uma variável php, e não um arquivo de texto
-
07-07-2019 - |
Pergunta
pdftotext leva um arquivo PDF e converte o texto em um arquivo .txt.
Como eu iria sobre a obtenção de pdftotext para enviar o resultado a uma variável PHP em vez de um arquivo de texto?
Eu estou supondo que eu tenho que correr exec('pdftotext /path/file.pdf')
, mas como faço para obter a parte de trás resultado?
Solução
Você precisa capturar stdout / stderr:
function cmd_exec($cmd, &$stdout, &$stderr)
{
$outfile = tempnam(".", "cmd");
$errfile = tempnam(".", "cmd");
$descriptorspec = array(
0 => array("pipe", "r"),
1 => array("file", $outfile, "w"),
2 => array("file", $errfile, "w")
);
$proc = proc_open($cmd, $descriptorspec, $pipes);
if (!is_resource($proc)) return 255;
fclose($pipes[0]); //Don't really want to give any input
$exit = proc_close($proc);
$stdout = file($outfile);
$stderr = file($errfile);
unlink($outfile);
unlink($errfile);
return $exit;
}
Outras dicas
$result = shell_exec("pdftotext file.pdf -");
O -
irá instruir pdftotext para retornar o resultado para stdout em vez de um arquivo.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow