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
。感谢帮助:)