shell_exec()不执行pdftotext命令

时间:2012-09-01 08:46:43

标签: php shell-exec pdftotext xpdf

我安装了所需的库及其在终端中工作但不在我的php文件中。 我的代码是:

$mypdf = shell_exec('/usr/local/bin/pdftotext test.pdf test.txt');
echo $mypdf;

如果我在终端中执行此命令/usr/local/bin/pdftotext test.pdf test.txt,它可以正常工作。

我也写了这样的代码:

shell_exec('/usr/local/bin/pdftotext test.pdf test.txt');
$mypdf = file_get_contents("test.txt");
echo $mypdf;

错误日志消息为:

/usr/local/bin/pdftotext: /opt/lampp/lib/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib/i386-linux-gnu/libstdc++.so.6)

3 个答案:

答案 0 :(得分:1)

我的猜测是你希望$mypdf包含PDF文档而不是执行命令的返回值。如果您正在尝试打印'test.txt',那么您需要将其加载并打印出来。

答案 1 :(得分:1)

问题是:/usr/local/bin/pdftotext: /opt/lampp/lib/libgcc_s.so.1: version 'GCC_4.2.0' not found (required by /usr/lib/i386-linux-gnu/libstdc++.so.6)

解决方案是将/opt/lampp/lib/libgcc_s.so.1重命名为libgcc_s.so.1.bak并解决我的问题。但混淆是它的问题是什么:P

答案 2 :(得分:0)

我认为您在依赖方面遇到了一些麻烦。检查您的error.log。找出缺少的文件,并将其添加到php安装的路径环境变量中。