0

我按照自述文件上的说明进行操作,但没有收到任何错误,也没有任何输出或写入日志文件的任何内容。那么,用王子将HTML文件转换为PDF的正确方法是什么,提前谢谢你。

ini_set('display_errors', '1');
error_reporting(-1);

require 'prince.php';



$exepath='/Users/agk/Desktop/prince/bin/prince';
$prince= new Prince($exepath);

if(!$prince) die("Prince instantiation failed");


$prince->setHTML(TRUE);
$prince->setLog('prince.log');


$xmlPath='/Applications/MAMP/htdocs/test/newhtml.html';



$msgs= array();
$convert=$prince->convert_file($xmlPath, $msgs);


if(!$convert)
{
echo 'nothing converted';
var_dump($msgs);

 }
4

1 回答 1

1

我注意到您正在使用 MAMP——这就是我遇到同样问题的地方——这就是我修复它的方法。

我设法在其他地方找到了与通过 PHP 在 MAMP 上运行 shell 命令有关的答案,所以将分享这个。

问题是 DYLD_LIBRARY_PATH 是在 MAMP 中设置的,而 PHP 中的 shell/shell_exec 命令正在寻找其他地方。

正如原始帖子中所解释的,这可能不是最好的解决方案,但它让我现在可以启动并运行 - 那里的替代建议对我不起作用。

所以,试试这个:

打开 /Applications/MAMP/Library/bin/envvars 文件并注释以下行:

#DYLD_LIBRARY_PATH="/Applications/MAMP/Library/lib:$DYLD_LIBRARY_PATH"
#export DYLD_LIBRARY_PATH

然后重新启动 Apache

它可能会弄乱其他 MAMP 设置,但我现在可以忍受,因为我需要它在我的 Mac 上本地工作以进行测试,然后再将它全部加载到实时 Linux 服务器上。

希望这可以帮助。

于 2013-11-04T12:33:11.713 回答