我有以下代码无法执行外部程序与PHP
function generate_pdf() {
$fdf_data_strings = $this->get_hash_for_pdf();
#$fdf_data_names = array('49a' => "yes");
$fdf_data_names = array();
$fields_hidden = array();
$fields_readonly = array();
$hud_pdf = ABSPATH.'../pdf/HUD3.pdf';
$fdf= forge_fdf('',
$fdf_data_strings,
$fdf_data_names,
$fields_hidden,
$fields_readonly);
/* echo "<pre>";
print_r($fdf);
echo "</pre>";
die('');
*/
$fdf_fn= tempnam('.', 'fdf');
$fp= fopen($fdf_fn, 'w');
if($fp) {
fwrite($fp, $fdf);
//$data=fread($fp, $fdf);
// echo $data;
fclose($fp);
header('Content-type: application/pdf');
header('Content-disposition: attachment; filename=settlement.pdf'); // prompt to save to disk
passthru('pdftk HUD3.pdf fill_form '. $fdf_fn.' output - flatten');
unlink($fdf_fn); // delete temp file
}
else { // error
echo 'Error: unable to open temp file for writing fdf data: '. $fdf_fn;
}
}
}
有什么错呢?
问题,我已经安装了PDFTK
乳宁whereis pdftk
给我'/usr/local/bin/pdftk'
身体检查位置,PDFTK有没有在所说的位置..
使用终端,如果我跑pdftk --version
或任何其他命令,它运行
如果我使用php就像passthru('/usr/local/bin/pdftk --version')
什么都没有显示
如果我采用php喜欢system("PATH=/usr/local/bin && pdftk --version");
它说'/usr/local/bin /pdftk :there is no directory of file '
当我运行这个功能脚本,提示文件下载持久性有机污染物,但是当我保存它,nothng保存,
我已经检查权限此文件夹并改变它0755, 0766, 0777, 0666
我已经尝试过所有,nothng作品
3天,我努力克服它,我也问过这个问题,但无法弄清楚到底是怎么回事。
在我用头撞墙之前,有人能帮助我吗?
如何:系统( “PATH =在/ usr/local/bin目录/ PDFTK --version”); – 2012-03-24 23:13:06
至于:/ usr/local/bin/pdftk --version,可能版本会输出到stderr,而不是stdout,这就是为什么你什么都得不到的原因。并且还要查看Web服务器的error.log。 – 2012-03-24 23:14:32
如果您要求系统(“PATH =/usr/local/bin/pdftk --version 2>&1”),则没有任何反应bro – 2012-03-24 23:16:27