Php Codeginiter:chmod():无效参数错误

Php Codeginiter:chmod():无效参数错误,php,codeigniter,pdf-generation,pdftk,Php,Codeigniter,Pdf Generation,Pdftk,我正在使用pdftk库来修改pdf文件。但是我得到了chmod():无效参数错误 以下是我的代码: include('fillpdf/createXFDF.php'); $fdf_file = 'fillpdf/acord.fdf'; $acord = array(); $acord['******'] = 'a'; $acord['******'] = 'a'; $pdf_file_url = 'http://localhost/******/fi

我正在使用
pdftk
库来修改pdf文件。但是我得到了
chmod():无效参数
错误

以下是我的代码:

  include('fillpdf/createXFDF.php');
    $fdf_file = 'fillpdf/acord.fdf';
    $acord = array();
    $acord['******'] = 'a';
    $acord['******'] = 'a';
    $pdf_file_url  = 'http://localhost/******/fillpdf/Cancellation.pdf';
    $fdf = createXFDF( $pdf_file_url, $acord );
    // print_r($fdf); die;
           if ($fp = fopen($fdf_file, 'w')) { 
                chmod($fdf, 777);
                fwrite($fp, $fdf, strlen($fdf));
                $CREATED = TRUE;
            } else {
                echo 'Unable to create file: ' . $fdf_file . '<br><br>';
                $CREATED = FALSE;
            } 
            // var_dump($CREATED); die;
    fclose($fp);
    $command = '"C:\\Program Files (x86)\\PDFtk\\bin\\pdftk.exe" C:\\xampp\\htdocs\\*******\\fillpdf\\Cancellation.pdf fill_form acord.fdf output C:\\xampp\\htdocs\\*******\\fillpdf\\Cancellation_new.pdf';
    exec($command);
include('fillpdf/createXFDF.php');
$fdf_file='fillpdf/acord.fdf';
$acord=array();
$acord['******']='a';
$acord['******']='a';
$pdf\u文件\u url='0http://localhost/******/fillpdf/Cancellation.pdf';
$fdf=createXFDF($pdf\u file\u url,$acord);
//印刷费($fdf);死亡
如果($fp=fopen($fdf_文件,'w')){
chmod(777美元);
fwrite($fp,$fdf,strlen($fdf));
$CREATED=TRUE;
}否则{
echo“无法创建文件:”.$fdf_文件。“

”; $CREATED=FALSE; } //var_dump($CREATED);死亡 fclose($fp); $command='“C:\\Program Files(x86)\\PDFtk\\bin\\PDFtk.exe”C:\\xampp\\htdocs\\*********\\fillpdf\\Cancellation.pdf fill\u form acord.fdf输出C:\\xampp\\htdocs\******\\fillpdf\\Cancellation\u new.pdf'; exec($command);
我已经给予了所有必要的权限来访问文件夹和文件。但不知道是怎么回事


提前感谢

像这样试试……对于
chmod()
函数,第一个数字总是零

chmod(file,mode);
模式参数由四个数字组成:

1.第一个数字始终为零

2.第二个数字指定所有者的权限

3.第三个数字指定所有者用户组的权限

4.第四个数字指定其他人的权限

include('fillpdf/createXFDF.php');
    $fdf_file = 'fillpdf/acord.fdf';
    $acord = array();
    $acord['******'] = 'a';
    $acord['******'] = 'a';
    $pdf_file_url  = 'http://localhost/******/fillpdf/Cancellation.pdf';
    $fdf = createXFDF( $pdf_file_url, $acord );
    // print_r($fdf); die;
           if ($fp = fopen($fdf_file, 'w')) { 
                chmod($fdf,0777);
                fwrite($fp, $fdf, strlen($fdf));
                $CREATED = TRUE;
            } else {
                echo 'Unable to create file: ' . $fdf_file . '<br><br>';
                $CREATED = FALSE;
            } 
            // var_dump($CREATED); die;
    fclose($fp);
    $command = '"C:\\Program Files (x86)\\PDFtk\\bin\\pdftk.exe" C:\\xampp\\htdocs\\*******\\fillpdf\\Cancellation.pdf fill_form acord.fdf output C:\\xampp\\htdocs\\*******\\fillpdf\\Cancellation_new.pdf';
    exec($command);
include('fillpdf/createXFDF.php');
$fdf_file='fillpdf/acord.fdf';
$acord=array();
$acord['******']='a';
$acord['******']='a';
$pdf\u文件\u url='0http://localhost/******/fillpdf/Cancellation.pdf';
$fdf=createXFDF($pdf\u file\u url,$acord);
//印刷费($fdf);死亡
如果($fp=fopen($fdf_文件,'w')){
chmod(7 777美元);
fwrite($fp,$fdf,strlen($fdf));
$CREATED=TRUE;
}否则{
echo“无法创建文件:”.$fdf_文件。“

”; $CREATED=FALSE; } //var_dump($CREATED);死亡 fclose($fp); $command='“C:\\Program Files(x86)\\PDFtk\\bin\\PDFtk.exe”C:\\xampp\\htdocs\\*********\\fillpdf\\Cancellation.pdf fill\u form acord.fdf输出C:\\xampp\\htdocs\******\\fillpdf\\Cancellation\u new.pdf'; exec($command);
为什么需要给出
chmod($fdf,0777)
$fdf
。甚至不是文件。根据您的代码,
$fdf=createXFDF($pdf\u file\u url,$acord)正在调用函数,但它不是文件。所以只需注释
chmod($fdf0777)行并检查代码是否工作


希望对你有帮助

我也试过了<代码>chmod($fdf,0777)但未工作:(更多信息,请参见此处尝试使用
0777
0755
echo
$fdf
。文件文件夹名称是否正确?是的,因为我的
createXFDF
函数正在调用。我确实检查了itHmmm!!我认为这是正确的…第一个参数应该是
filename
。感谢帮助:)