-1
  $ha=opendir($LOCAL_SERVER_DIR);

  while (($filelocal = readdir($ha))!==false)             
  {                             

   if(!is_dir($filelocal))  
   {  
     $fa[]=$filelocal;                                                          

   }
   sort($fa);
  }

  for($i=0;$i<sizeOf($fa);$i++)
  {    
       $pdfname=substr($fa[$i], 0, strpos($fa[$i], '.pdf')); 

       exec("convert -scale  1500x1000".$fa[$i]."D:/Images/ExtractFromFTP/img%d_".$pdfname.".png");

  }

私のコードでは、複数の PDF を抽出し、抽出したすべての画像をD:/Images/ExtractFromFTP/次のパスに保存しています。そのため、pdf 名に従って画像を並べ替えるのは非常に困難です。そのため、抽出した画像をそのフォルダーのpdf名に従って別のフォルダーに保存したいのですが(つまり、実行時にフォルダーを作成する必要があります)、順序を並べ替える方法が見つかりませんでしたか?

4

2 に答える 2

0

mkdirを使用してディレクトリを作成できます

$pdfname=substr($fa[$i], 0, strpos($fa[$i], '.pdf')); 
//you can also do this: 
$pdfname =  substr($fa[$i],0,-4); //this will cut off last for chars, eg '.pdf';

$dirname = "D:/Images/ExtractFromFTP/" . $pdfname;
if (mkdir($dirname)) {
    exec("convert -scale  1500x1000 " . escapeshellarg($fa[$i]) . escapeshellarg("D:/Images/ExtractFromFTP/${dirname}/img%d_".$pdfname.".png"));
} else {
     echo 'Could not create dir!';
}

したがって、実行する必要があるのはmkdir($ directory);だけです。ただし、pdf名とターゲットpng名をエスケープするために呼び出されるescapeshellarg関数に注意してください。これは、スペースを含むファイル名が2つではなく1つのパラメーターとして扱われるようにし、名前が含まれている場合に自分自身を保護するために必要です。

于 2013-03-05T09:03:07.833 に答える
0

あなたの問題が何であるかわかりません。漠然とした問題を Google で検索しようとしたことはありますか?

ファイルの作成方法

リンク番号 2

于 2013-03-05T07:54:04.970 に答える