我有以下代碼無法執行外部程序與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