ezpdf while循环 - 生成pdf失败

时间:2012-06-13 21:14:18

标签: php pdf

我的代码如下所示,我想要实现的是生成动态创建的行的PDF文档。用户可以从他们填写的表单生成PDF。如果他们想在其中一个字段中添加更多文本,则应将其拆分为行。

想法是这样的:爆炸文本,并在检查每个单词的大小是否小于70(连续所需的字符)后,用空格添加每个单词。不幸的是WHILE循环有问题,导致我的脚本不生成任何PDF文件。有人可以帮忙吗?我在这里看不出我做错了什么。

    //length of line is 70 chars
    $n = strlen($datan['reason']) / 70;

    //if there are some chars left add last line
    if(strlen($datan['reason'])%70 > 0)
    {
        $n++;
    }   
    $pieces = explode(" ",$datan['reason']);
    $piece_number = 0;

    //create n lines 
    for($i=0;$i<$n;$i++){
        $previous = "";
        $l = true;
        //add pieces not to exceed 70 chars
        while($l == true){
            $current = $pieces[$piece_number];
            if(strlen($current) + strlen($previous) < 70){
                $previous .= $current . " ";
                $piece_number++;
            }
            else
                $l = false;
        }
        //print line
        $pdf->addText(215,535+(20*$i),10,$previous);
    }

1 个答案:

答案 0 :(得分:0)

好吧,问题就像我预期的那样,它无法结束,因为它耗尽了$ pieces数组,我忘了控制它。